Memory management method
First Claim
1. A method for managing main memory comprising DRAM and NVRAM in a computer depending on a transition of an operation state of the computer, the method comprising:
- upon start of the computer, loading at least one of a first program and a first data into the DRAM, and loading at least one of a second program and a second data into the NVRAM;
in a state transition from a normal operation of the computer to a suspend state of the computer, moving the first data in the DRAM to the NVRAM on a page basis;
in a state transition from the suspend state of the computer to the normal operation of the computer, reading the first data from the NVRAM on a page basis for program execution by the computer;
in the case where a first data write to the NVRAM on a page basis occurs while reading the first data from the NVRAM on a page basis, stopping the first data write, and moving the first data in a data area of the NVRAM subjected to the first data write, to the DRAM on a page basis;
performing the first data write on a page basis to the DRAM to which the first data has been moved;
detecting a use state of respective instances of a page table stored in the DRAM;
determining, based on detecting the use state of respective instances of the page table stored in the DRAM, that a third data in the DRAM has not been read for a second time interval;
determining that the second time interval is greater than a threshold read time; and
moving the third data from the DRAM to the NVRAM responsive to determining that the second time interval is greater than the threshold read time.
1 Assignment
0 Petitions
Accused Products
Abstract
A method for managing main memory including DRAM and NVRAM in a computer depending on the operation state of the computer is provided. The method includes: (a) upon start of the computer, loading a program and the like into the DRAM, and loading predetermined read-only data and the like into the NVRAM; (b) in a state transition from a normal operation to a suspend state, moving data in the DRAM to the NVRAM; (c) in a state transition from the suspend state to the normal operation, reading data from the NVRAM for program execution; (d) in the case where a data write to the NVRAM occurs, stopping the data write, and moving data in a data area of the NVRAM subjected to the data write, to the DRAM; and (e) performing the data write to the DRAM to which the data has been moved.
-
Citations
12 Claims
-
1. A method for managing main memory comprising DRAM and NVRAM in a computer depending on a transition of an operation state of the computer, the method comprising:
-
upon start of the computer, loading at least one of a first program and a first data into the DRAM, and loading at least one of a second program and a second data into the NVRAM; in a state transition from a normal operation of the computer to a suspend state of the computer, moving the first data in the DRAM to the NVRAM on a page basis; in a state transition from the suspend state of the computer to the normal operation of the computer, reading the first data from the NVRAM on a page basis for program execution by the computer; in the case where a first data write to the NVRAM on a page basis occurs while reading the first data from the NVRAM on a page basis, stopping the first data write, and moving the first data in a data area of the NVRAM subjected to the first data write, to the DRAM on a page basis; performing the first data write on a page basis to the DRAM to which the first data has been moved; detecting a use state of respective instances of a page table stored in the DRAM; determining, based on detecting the use state of respective instances of the page table stored in the DRAM, that a third data in the DRAM has not been read for a second time interval; determining that the second time interval is greater than a threshold read time; and moving the third data from the DRAM to the NVRAM responsive to determining that the second time interval is greater than the threshold read time. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
Specification