Patent classifications
G06F3/0676
Prepopulating page tables for memory of workloads during live migrations
A method of populating page tables of an executing workload during migration of the executing workload from a source host to a destination host includes the steps of: before resuming the workload at the destination host, populating the page tables of the workload at the destination host, wherein the populating comprises inserting mappings from virtual addresses of the workload to physical addresses of system memory of the destination host; and upon completion of populating the page tables, resuming the workload at the destination host.
SOFTWARE MEMORY TAGGING FOR HEAP OVERFLOW PROTECTION
Generally discussed herein are devices, systems, and methods for software memory tagging that provides buffer overflow protection. A method can include responsive to a memory write operation to write data to a heap of a memory, identifying a first tag value associated with a first address of the memory write operation in the bit map, comparing, for each address after the first address affected by the memory write operation, respective tag values in a bit map of the memory to the identified first tag value, and halting execution of the application if any of the respective tag values do not match the first tag value.
Application recovery using a memory image
A memory image can be captured by generating metadata indicative of a state of volatile memory and/or byte-addressable PMEM at a particular time during execution of a process by an application. This memory image can be persisted without copying the in-memory data into a separate persistent storage by storing the metadata and safekeeping the in-memory data in the volatile memory and/or PMEM. Metadata associated with multiple time-evolved memory images captured can be stored and managed using a linked index scheme. A linked index scheme can be configured in various ways including a full index and a difference-only index. The memory images can be used for various purposes including suspending and later resuming execution of the application process, restoring a failed application to a previous point in time, cloning an application, and recovering an application process to a most recent state in an application log.
SYSTEMS AND METHODS FOR SYNCHRONIZING DATA PROCESSING IN A CELLULAR MODEM
A cellular modem processor can include dedicated processing engines that implement specific, complex data processing operations. The processing engines can be arranged in pipelines, with different processing engines executing different steps in a sequence of operations. Flow control or data synchronization between pipeline stages can be provided using a hybrid of firmware-based flow control and hardware-based data dependency management. Firmware instructions can define data flow by reference to a virtual address space associated with pipeline buffers. A hardware interlock controller within the pipeline can track and enforce the data dependencies for the pipeline.
DATA ENCRYPTION AND DECRYPTION IN DISK DEVICE AND STORAGE DEVICE
A disk device includes a volatile memory, a nonvolatile memory, and a controller. The controller is configured to receive, from a host, a key setting request that includes a cryptographic key, a key ID thereof, and tag information of the cryptographic key and generate generation information of the cryptographic key. The controller is also configured to store a first entry including the tag information, the cryptographic key, and the generation information associated with each other in the volatile memory, and store a second entry including the key ID and the generation information associated with each other in the nonvolatile memory.
MAGNETIC DISK DEVICE, CONTROL METHOD, AND NON-TRANSITORY COMPUTER-READABLE STORAGE MEDIUM
A magnetic disk device includes a plurality of magnetic heads, a storage unit that stores a table storing, for each of the magnetic heads, a track skew value obtained by adding a head shared value and a head unique value, and a control unit that reads out the track skew value corresponding to one of the magnetic heads to be operated from the table and performs seek control.
METHOD OF POWER MANAGEMENT
A method of power management includes steps of: in response to receiving from a server host a sleep command, an expander first outputting a predetermined register value to a processing unit in a normal state, and then switching to a power-saving state and outputting an interrupt signal to the processing unit; the processing unit determining whether both the predetermined register value and the interrupt signal are received; and when it is determined that both the predetermined register value and the interrupt signal have been received, the processing unit controlling a power supply to output standby electricity, making the expander and the processing unit operate based on the standby electricity.
METHOD, DEVICE, AND COMPUTER PROGRAM PRODUCT FOR MANAGING STORAGE SYSTEM
Embodiments of the present disclosure relate to a method, an electronic device, and a computer program product for managing a storage system. The method includes: based on respective task types of a plurality of tasks to be executed, allocating the plurality of tasks to a plurality of accelerator resources in a storage system for processing; at least for a first accelerator resource in the plurality of accelerator resources, determining a first polling interval based on an average task size of a first group of tasks allocated to the first accelerator resource; and scheduling the execution of the first group of tasks at the first accelerator resource at the first polling interval. The embodiments of the present disclosure can optimize the scheduling of the tasks to be executed on the plurality of accelerator resources, thereby optimizing system performance.
Managed placement of object components in an object-based datastore
A method for storage management of an object among a plurality of storage devices of a datacenter is provided. The method, in response to receiving an input on a selection item presented through a UI, determines that a manual storage management of an object is selected. The method then receives a storage policy for storing the object. Based on the storage policy, the method defines a plurality of components for the object and determines whether a set of one or more storage resources is available for storing the plurality of components. When the method determines that the set is available, for each component, the method presents the set of storage resources, receives a selection of a storage resource in the set to store the component, and updates the set based on the policy and the selection before presenting the updated set to select from for storing a next component.
AIR GAPPED DATA STORAGE DEVICES AND SYSTEMS
A data storage blade includes a plurality of data storage cartridges, with each of the plurality of data storage cartridges comprising at least one data storage medium. The data storage blade also includes shared drive electronics (SDE) external to the plurality of data storage cartridges. The SDE is configured to control data access operations on different data storage cartridges of the plurality of data storage cartridges. The data storage blade further includes a controller-override mechanism activatable to disable communication between the SDE and the plurality of data storage cartridges.