Patent classifications
G06F12/0638
Paging enablement of storage translation metadata
Techniques are disclosed relating to storing translations in memory that are usable to access data on a recording medium. In one embodiment, a request is sent for a memory allocation within a non-pageable portion of a memory in a computer system. Responsive to the request, allocated memory is received. Translations usable to map logical addresses to physical addresses within a storage device are stored within the allocated memory. In some embodiments, the translations are usable to access an area within the storage device used to store pages evicted from the memory. In one embodiment, a size of the memory allocation is determined based on a size of the area. In another embodiment, a size of the memory allocation is determined based on a size of a partition including the area. In some embodiments, the storage device is a solid-state storage array.
Method and apparatus for optimizing the performance of a storage system
Methods and apparatuses for optimizing the performance of a storage system comprise a FLASH storage system, a hard drive storage system, and a storage controller. The storage controller is adapted to receive READ and WRITE requests from an external host, and is coupled to the FLASH storage system and the hard drive storage system. The storage controller receives a WRITE request from an external host containing data and an address, forwards the received WRITE request to the FLASH storage system and associates the address provided in the WRITE request with a selected alternative address, and provides an alternative WRITE request, including the selected alternative address and the data received in the WRITE request, to the hard drive storage system, wherein the alternative address is selected to promote sequential WRITE operations within the hard drive storage system.
Data storage in a mobile device with embedded mass storage device
A mobile device (100) includes a processing device (140), a random access memory, RAM, (150) and an embedded mass storage device (160). A first interface (IF1) is provided between the processing device (140) and the RAM (150). The first interface (IF1) supports access of the processing device (140) to the RAM (150). The mass storage device (160) includes a controller (170) and a non-volatile flash memory (180). A second interface (IF2) is provided between the controller (170) and the flash memory (180). The second interface (IF2) supports access of the controller (170) to the flash memory (180). A third interface (IF3) is provided between the controller (170) and the processing device (140). The third interface (IF3) supports access of the controller (170) to the RAM (150).
Adaptive power control of address map memory devices
An apparatus includes a storage resource to store data. The data can be accessible by a host computer system. The apparatus includes a set of dynamically powered volatile memory devices that are configured to store mapping information. The mapping information maps logical addresses of received access requests to corresponding physical addresses of the storage resource to which the access requests pertain. In accordance with received mode setting information, the controller logic adaptively controls power settings of the volatile memory devices storing the mapping information. If an abundance of power such as 120 VAC power is available, more of volatile memory devices can be powered to store a greater portion of the mapping information. If only battery power is available, fewer than all of the volatile memory devices can be powered to store a smaller portion of the mapping information.
MEMORY MODULE AND MEMORY SYSTEM INCLUDING THE SAME
A memory module may include a first memory device configured to be controlled by a host memory controller, to transmit/receive data to/from the host memory controller in a first mode, and to transmit/receive data to/from a module memory controller in a second mode, a second memory device configured to be controlled by the module memory controller and to transmit/receive data to/from the module memory controller in the second mode, and the module memory controller configured to monitor control of the first memory device by the host memory controller, to exchange data such that the data is transmitted/received between the first memory device and the second memory device in the second mode, and to control the second memory device.
Adjusting allocation of storage devices
Embodiments of the present invention provide methods, computer systems, and computer program products for adjusting allocation of a storage device. In one embodiment, a first part of the storage device is allocated to tiering storage, and a second part of the storage device is allocated to cache storage. Operating statuses of the first part and second part are collected. A performance measure of the first part is obtained based on the operating status of the first part, and a performance measure of the second part is obtained based on the operating status of the second part. Allocation of a capacity of the storage devices is adjusted between the first part and the second part based on the performance measures of the first part and the second part.
METHODS AND APPARATUS TO MANAGE A PROCESS UNDER A MEMORY CONSTRAINT
Methods and apparatus to manage a process under a memory constraint are disclosed herein. An example method includes detecting that a process is to transition from a foreground mode of operation to a background mode of operation. Without transitioning the process to the background mode of operation, a projected out of memory score is calculated. Without transitioning the process to the background mode of operation, the projected out of memory score is compared to a score threshold. Without transitioning the process to the background mode of operation, the process is terminated when the projected out of memory score is greater than the score threshold.
Data storage layout
Examples of the present disclosure provide apparatuses and methods for determining a data storage layout. An example apparatus comprising a first address space of a memory array comprising a first number of memory cells coupled to a plurality of sense lines and to a first select line. The first address space is configured to store a logical representation of a first portion of a value. The example apparatus also comprising a second address space of the memory array comprising a second number of memory cells coupled to the plurality of sense lines and to a second select line. The second address space is configured to store a logical representation of a second portion of the value. The example apparatus also comprising sensing circuitry configured to receive the first value and perform a logical operation using the value without performing a sense line address access.
Methods, apparatus, and systems for secure demand paging and other paging operations for processor devices
A secure demand paging system includes a secure internal memory having a table relating physical addresses to virtual addresses, a non-volatile memory, a decryption module and a hash module between the secure memory and the non-volatile memory to allow for decryption and integrity verification of data stored in the non-volatile memory during a transfer to said secure memory and means for connecting the secure memory to a volatile page swap memory such that the non-volatile memory is bypassable during a page swap.
Methods and systems for managing memory allocation
An electronic device with volatile memory repeatedly compares an amount of free volatile memory to a first predetermined threshold level of free volatile memory. When the device determines that the amount of free volatile memory is less than the first predetermined threshold level, the device deallocates volatile memory by terminating one or more processes based on predetermined priority levels of the one or more processes.