MLchartDataset catalogue

Patent · US6647472B2 · B2 · US

Fast suspend to disk

(11) Publication number
US6647472B2
(21) Application number
US-36692503-A
(22) Filing date
2003-02-14
(30) Priority date
2000-12-29
(43) Publication date
2003-11-11
(45) Date of grant
2003-11-11
(52) CPC
  • G06F Electric digital data processing: 1/3225, 1/3203, 12/08, 9/4418
  • Y02D Climate change mitigation technologies in information and communication technologies [ICT], i.e. information and communication technologies aiming at the reduction of their own energy use: 10/00
(73) Assignee
HEWLETT PACKARD DEVELOPMENT CO
(54) Title
Fast suspend to disk
(57) Abstract

A computer system supports a fast hibernation operation to save power, while minimizing the amount of time it takes to enter the hibernation mode, and to resume normal operations. The system periodically stores data from system memory to non-volatile memory, such as a hard disk drive, during normal operations when the system is idle. The system includes activity monitors that detect when the data in memory pages is changed. The system periodically sweeps the monitors, and performs save operations to the non-volatile memory. When the system enters hibernation mode, the system determines which memory pages have been changed since the last save operation, and then saves those pages to memory. As an alternative, the system immediately can enter hibernation by supplying power to the memory pages that have not been saved since the last save operation. To implement this, independent switches under the control of the CPU of memory controller selectively turn off power to unsaved memory pages. The system can also implement a fast resume procedure by restoring the memory pages that have the highest priority, and saving the other pages in the background, or as need by the system devices. Prior to entering the hibernation mode, the pages may be prioritized based on various factors, including the last pages used, the pages used most frequently, or the pages that store the most critical data.

Full text
View on Google Patents

Claims (9)

  1. A method of placing a computer system into a hibernation state, comprising the acts of: calculating a priority value for each page of system memory; storing the priority value in a designated register; storing each page of system memory that includes valid data to non-volatile memory; entering a hibernation state; resuming from a hibernation state; reading the priority value from the designated register; and restoring the page of system memory with the highest priority before restoring any other page of system memory.
  2. The method of claim 1, wherein the priority value is assigned based on a last used criteria.
  3. The method of claim 1, wherein the priority value is assigned based on a most used criteria.
  4. The method of claim 1, wherein the priority value is assigned based on a most critical criteria.
  5. The method of claim 1, further comprising the act of passing operation to an operating system prior to restoring pages of memory other than the page with the highest priority value.
  6. The method of claim 1, further comprising the act of passing operation to an operating system prior to restoring pages of memory other than the pages with the highest priority values.
  7. A computer system capable of entering a hibernation mode of operation, comprising: a CPU; a system memory that is divided into a plurality of pages; a nonvolatile memory device; a register that includes one or more bits that indicate a priority value assigned to each page of memory; wherein the CPU stores each page of memory that includes valid data in non-volatile memory when a hibernation mode is initiated, together with the register; and wherein the CPU restores the page of memory with the highest priority value prior to restoring any other page of memory.
  8. A system as in claim 7, wherein the CPU passes control to an operating system after restoring the page of memory with the highest priority.
  9. A system as in claim 7, wherein the CPU passes control to an operating system after restoring the pages of memory with the highest priorities.

Citations (1)

  • US2002073358A1
Record as JSON
{
  "publication_number": "US6647472B2",
  "country": "US",
  "kind": "B2",
  "title": "Fast suspend to disk",
  "abstract": "A computer system supports a fast hibernation operation to save power, while minimizing the amount of time it takes to enter the hibernation mode, and to resume normal operations. The system periodically stores data from system memory to non-volatile memory, such as a hard disk drive, during normal operations when the system is idle. The system includes activity monitors that detect when the data in memory pages is changed. The system periodically sweeps the monitors, and performs save operations to the non-volatile memory. When the system enters hibernation mode, the system determines which memory pages have been changed since the last save operation, and then saves those pages to memory. As an alternative, the system immediately can enter hibernation by supplying power to the memory pages that have not been saved since the last save operation. To implement this, independent switches under the control of the CPU of memory controller selectively turn off power to unsaved memory pages. The system can also implement a fast resume procedure by restoring the memory pages that have the highest priority, and saving the other pages in the background, or as need by the system devices. Prior to entering the hibernation mode, the pages may be prioritized based on various factors, including the last pages used, the pages used most frequently, or the pages that store the most critical data.",
  "claims": [
    "1. A method of placing a computer system into a hibernation state, comprising the acts of: calculating a priority value for each page of system memory; storing the priority value in a designated register; storing each page of system memory that includes valid data to non-volatile memory; entering a hibernation state; resuming from a hibernation state; reading the priority value from the designated register; and restoring the page of system memory with the highest priority before restoring any other page of system memory.",
    "2. The method of claim 1, wherein the priority value is assigned based on a last used criteria.",
    "3. The method of claim 1, wherein the priority value is assigned based on a most used criteria.",
    "4. The method of claim 1, wherein the priority value is assigned based on a most critical criteria.",
    "5. The method of claim 1, further comprising the act of passing operation to an operating system prior to restoring pages of memory other than the page with the highest priority value.",
    "6. The method of claim 1, further comprising the act of passing operation to an operating system prior to restoring pages of memory other than the pages with the highest priority values.",
    "7. A computer system capable of entering a hibernation mode of operation, comprising: a CPU; a system memory that is divided into a plurality of pages; a nonvolatile memory device; a register that includes one or more bits that indicate a priority value assigned to each page of memory; wherein the CPU stores each page of memory that includes valid data in non-volatile memory when a hibernation mode is initiated, together with the register; and wherein the CPU restores the page of memory with the highest priority value prior to restoring any other page of memory.",
    "8. A system as in claim 7, wherein the CPU passes control to an operating system after restoring the page of memory with the highest priority.",
    "9. A system as in claim 7, wherein the CPU passes control to an operating system after restoring the pages of memory with the highest priorities."
  ],
  "cpc": [
    "G06F 1/3225",
    "G06F 1/3203",
    "G06F 12/08",
    "G06F 9/4418",
    "Y02D 10/00"
  ],
  "assignees": [
    "HEWLETT PACKARD DEVELOPMENT CO"
  ],
  "filing_date": "2003-02-14",
  "publication_date": "2003-11-11",
  "grant_date": "2003-11-11",
  "priority_date": "2000-12-29",
  "application_number": "US-36692503-A",
  "family_id": "25020764",
  "citations": [
    "US2002073358A1"
  ]
}

Record 2,960 of 5,000 in Patents full text (MLC-0201). Request the full dataset.