Patent classifications
G06F9/44557
APPARATUS FOR INITIALIZING MEMORY USING A HARDWARE ENGINE FOR MINIMIZING BOOT TIME
Methods and apparatus for initializing memory using a hardware engine for minimizing boot time. Booting of firmware in a computer system including one or more memory devices and a processor System on a Chip (SoC) including a central processing unit (CPU) having a plurality of cores and a memory controller coupled to the one or more memory devices is initialized. In parallel with at least a portion of booting the firmware, a plurality of memory ranges in at least one memory devices is initialized using at least one scrub engine. The at least one scrub engine may be embedded in the memory controller or external to the memory controller. Memory devices and ranges within those devices may continue to be initialized in parallel with booting an operating system following firmware booting. The scrub engine includes one or more registers or embedded memory used to program/store descriptor chains describing memory ranges to be initialized.
SYSTEM AND METHOD FOR DATA PROCESSING
Methods, systems, and apparatus, including computer programs encoded on computer storage media, for data processing are provided. One of the methods includes: obtaining a bytecode compiled from source code comprising one or more input parameters, the source code including an encoding function to encode the one or more input parameters, save the encoded one or more input parameters in a memory segment, and provide a memory location of the memory segment; executing, according to the bytecode, the encoding function to encode the one or more input parameters to obtain the memory location of the memory segment storing the encoded one or more input parameters; and providing the memory location to a function for retrieving and decoding the encoded one or more input parameters to obtain the one or more input parameters.
System and method for booting within a heterogeneous memory environment
System and methods for booting a system-on-chip (SOC) in an enhanced memory mode are described herein. In one aspect, an enhanced memory mode indicator may be read to create a trusted channel to a non-volatile random-access memory (NVRAM). The NVRAM may be logically connected to the SOC. In an aspect, the NVRAM may be secured prior to the creation of the trusted channel. Once the secure channel to NVRAM has been created, the SOC may operate in an enhanced memory mode. Prior to the SOC powering down, the system may store an indicator operable to enable a subsequent boot of the SOC in the power saving mode. The SOC may be operable to switch between the power saving mode and a normal mode depending on the operational requirements of the portable computing device in which the SOC is implemented.
SYSTEMS AND METHODS FOR FACILITATING REAL-TIME ANALYTICS
Provided herein are methods, systems, and computer-program products for providing a library of base classes to be used by applications to facilitate real-time analytics. In some examples, the library may be a C++ Library that provides a set of primitive operators (e.g., spout base class, tube base class, and sink base class) for user derivation. In some examples, the spout base class may relate to receiving data from a data source, the tube base class may relate to performing one or more operations on the received data, and the sink base class may relate to sending the processed data to a data target. The spout, tube, sink together provide a real-time streaming framework interface that may be extended by the user.
MICROCODE(UCODE) HOT-UPGRADE METHOD FOR BARE METAL CLOUD DEPLOYMENT
A microcode (uCode) hot-upgrade method for bare metal cloud deployment and associated apparatus. The uCode hot-upgrade method applies a uCode patch to a firmware storage device (e.g., BIOS SPI flash) through an out-of-band controller (e.g., baseboard management controller (BMC)). In conjunction with receiving a uCode patch, a uCode upgrade interrupt service is triggered to upgrade uCode for one or more CPUs in a bare-metal cloud platform during runtime of a tenant host operating system (OS) using an out-of-bound process. This innovation enables cloud service providers to deploy uCode hot-patches to bare metal servers for persistent storage and live-patch without touching the tenant operating system environment.
Reducing initial network launch time of container applications
A computer system is configured to support execution of a virtualized application, the files of which are stored in and retrieved from network storage. The method of launching the virtualized application includes (i) responsive to a first user event occurring prior to any user event for launching the virtualized application after user logon, executing a driver to fetch a subset of the files of the virtualized application from the network storage into system memory of the computer system, and (ii) responsive to a second user event corresponding to a launch of the virtualized application, instantiating an execution space for the virtualized application and loading the fetched files into the system memory for execution.
System and method for data processing
Methods, systems, and apparatus, including computer programs encoded on computer storage media, for data processing are provided. One of the methods includes: obtaining a bytecode compiled from source code comprising one or more input parameters, the source code including an encoding function to encode the one or more input parameters, save the encoded one or more input parameters in a memory segment, and provide a memory location of the memory segment; executing, according to the bytecode, the encoding function to encode the one or more input parameters to obtain the memory location of the memory segment storing the encoded one or more input parameters; and providing the memory location to a function for retrieving and decoding the encoded one or more input parameters to obtain the one or more input parameters.
SYSTEMS AND METHODS FOR ACCELERATING DATA OPERATIONS BY UTILIZING NATIVE MEMORY MANAGEMENT
For one embodiment of the present invention, methods and systems for accelerating data operations with efficient memory management in native code and native dynamic class loading mechanisms are disclosed. In one embodiment, a data processing system comprises memory and a processing unit coupled to the memory. The processing unit is configured to receive input data, to execute a domain specific language (DSL) for a DSL operation with a native implementation, to translate a user defined function (UDF) into the native implementation by translating user defined managed software code into native software code, to execute the native software code in the native implementation, and to utilize a native memory management mechanism for the memory to manage object instances in the native implementation.
Systems and methods for facilitating real-time analytics
Provided herein are methods, systems, and computer-program products for providing a library of base classes to be used by applications to facilitate real-time analytics. In some examples, the library may be a C++ Library that provides a set of primitive operators (e.g., spout base class, tube base class, and sink base class) for user derivation. In some examples, the spout base class may relate to receiving data from a data source, the tube base class may relate to performing one or more operations on the received data, and the sink base class may relate to sending the processed data to a data target. The spout, tube, sink together provide a real-time streaming framework interface that may be extended by the user.
Binary suppression and modification for software upgrades
A remote security system may generate multiple different binary programs for corresponding operating system (OS) kernel versions that are to receive a software upgrade. A suppression process may then compare code in the code sections between pairs of binary programs, and may also compare the data in the data sections between the pairs of binary programs to identify subsets of identical binaries. The remote security system may send a representative binary (while suppressing the remaining binaries in a subset of identical binaries) to host computing devices that run different OS kernel versions. On the receiving end, a host computing device that runs a particular OS kernel version may receive a binary program, and prior to loading the binary program, modify the binary program to render the binary loadable by (or compatible with) the particular OS kernel version running on the host computing device.