IP Library Granted Patent US 9,298,602
Granted Patent B2
US 9,298,602 · App. 14/092,444 · Granted Mar 29, 2016

Nonvolatile random access memory use

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,298,602
App. No.
14/092,444
Granted
Mar 29, 2016
Kind
B2
Abstract

For nonvolatile random access memory (NVRAM) use, a query module identifies persistent data on a NVRAM in response to waking the NVRAM. A management module makes available the persistent data for use.

Claims (48)

1. An apparatus comprising:

a processor;

a memory that stores code executable by the processor, the code comprising:

a query module that receives a request to load a data element in response to waking a nonvolatile random access memory (NVRAM) and in response to the request identifies persistent data comprising the data element on the NVRAM from a catalog stored on the NVRAM; and

a management module that makes available the persistent data for use without loading the data element in response to validating the persistent data with a validation signature stored in the catalog.

2. The apparatus of claim 1 , wherein the query module further:

detects the NVRAM.

3. The apparatus of claim 2 , wherein the catalog records a data identifier and a storage address of the persistent data.

4. The apparatus of claim 3 , wherein the persistent data is validated using a data pedigree stored in the catalog and the data pedigree comprises the validation signature.

5. The apparatus of claim 1 , wherein the management module further:

receives an allocation request for an allocation of NVRAM storage space;

allocates the NVRAM storage space; and

communicates an allocation acknowledgement comprising an allocated block address for the NVRAM memory.

6. The apparatus of claim 1 , wherein the management module further:

tracks data use of a first data element stored on a dynamic random-access memory (DRAM);

determines the first data element satisfies a NVRAM policy; and

migrates the first data element to the NVRAM in response to a NVRAM policy.

7. A method comprising:

receiving, by use of a processor, a request to load a data element in response to waking a nonvolatile random access memory (NVRAM);

in response to the request, identifying persistent data comprising the data element on the NVRAM from a catalog stored on the NVRAM; and

making available the persistent data for use without loading the data element in response to validating the persistent data with a validation signature stored in the catalog.

8. The method of claim 7 , the method further comprising:

validating the persistent data.

9. The method of claim 8 , wherein the catalog records a data identifier and a storage address of the persistent data.

10. The method of claim 9 , wherein the persistent data is validated using a data pedigree stored in the catalog and the data pedigree comprises the validation signature.

11. The method of claim 7 , the method further comprising:

receiving an allocation request for an allocation of NVRAM storage space;

allocating the NVRAM storage space; and

communicating an allocation acknowledgement comprising an allocated block address for the NVRAM memory.

12. The method of claim 7 , the method further comprising:

tracking data use of a first data element stored on a dynamic random-access memory (DRAM);

determining the first data element satisfies a NVRAM policy; and

migrating the first data element to the NVRAM in response to a NVRAM policy.

13. The method of claim 12 , wherein the NVRAM policy tests one or more of first data element uses per interval, persistence settings, and a last use.

14. The method of claim 7 , wherein one or more of a boot loader, an operating system loader, a process virtual machine, and an application identifies the persistent data and makes the persistent data available.

15. The method of claim 7 , wherein the persistent data is one or more of a software application and application data.

16. A program product comprising a computer readable storage medium storing code executable by a processor to perform:

receiving a request to load a data element in response to waking a nonvolatile random access memory (NVRAM);

in response to the request, identifying persistent data comprising the data element on the NVRAM from a catalog stored on the NVRAM; and

making available the persistent data for use without loading the data element in response to validating the persistent data with a validation signature stored in the catalog.

17. The program product of claim 16 , the code further:

validating the persistent data.

18. The program product of claim 17 , wherein the catalog records a data identifier and a storage address of the persistent data.

19. The program product of claim 18 , wherein the persistent data is validated using a data pedigree stored in the catalog and the data pedigree comprises the validation signature.

20. The program product of claim 17 , the code further:

receiving an allocation request for an allocation of NVRAM storage space;

allocating the NVRAM storage space; and

communicating an allocation acknowledgement comprising an allocated block address for the NVRAM memory.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 10, 2025
From: LENOVO PC INTERNATIONAL LIMITED
To: LENOVO SWITZERLAND INTERNATIONAL GMBH
Reel/Frame 069870/0670 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 8, 2019
From: LENOVO (SINGAPORE) PTE. LTD.
To: LENOVO PC INTERNATIONAL LIMITED
Reel/Frame 049688/0082 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 6, 2013
From: DAVIS, MARK CHARLES
To: LENOVO (SINGAPORE) PTE. LTD.
Reel/Frame 031730/0500 →