Low-overhead storage of a hibernation file in a hybrid disk drive

US9804784B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9804784-B2
Application numberUS-201615204739-A
CountryUS
Kind codeB2
Filing dateJul 7, 2016
Priority dateDec 6, 2012
Publication dateOct 31, 2017
Grant dateOct 31, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A hybrid drive and associated methods provide low-overhead storage of a hibernation file in the hybrid hard disk drive. During operation, the hybrid drive allocates a portion of solid-state memory in the drive that is large enough to accommodate a hibernation file associated with a host device of the hybrid drive. In addition to the erased memory blocks that are normally present during operation of the hybrid drive, the portion of solid-state memory allocated for accommodating the hibernation file may include over-provisioned memory blocks, blocks used to store a previous hibernation file that has been trimmed, and/or non-dirty blocks.

First claim

Opening claim text (preview).

We claim: 1. A method of hibernating a computer system running in a host in a device having a first nonvolatile memory and a second nonvolatile memory comprising a plurality of memory blocks, the method comprising: receiving from the host a hibernate command and a hibernation file associated with the computer system running in the host; and upon receiving the hibernate command, erasing non-dirty data stored in a portion of the second nonvolatile memory, the portion excluding memory blocks storing dirty data, which represents valid data stored in the second nonvolatile memory but not in the first nonvolatile memory, and storing the hibernation file into the portion of the second nonvolatile memory, wherein the non-dirty data represents valid data stored in both the first nonvolatile memory and the second nonvolatile memory, and copies of the non-dirty data and the dirty data are preserved during a garbage collection process. 2. The method of claim 1 , wherein the first nonvolatile memory comprises a magnetic memory, the method further comprising: prior to storing the hibernation file into the portion of the second nonvolatile memory, initiating parking of a magnetic head in the magnetic memory. 3. The method of claim 1 , further comprising: prior to receiving the hibernate command, maintaining a data storage capacity of the portion to be sufficient to store an expected size of the hibernation file. 4. The method of claim 3 , further comprising: in response to a write command, when the data storage capacity of the portion is less than a predetermined threshold, storing data of the write command into the first nonvolatile memory and not into the second nonvolatile memory. 5. The method of claim 4 , wherein the predetermined threshold is no greater than the data storage capacity of the second nonvolatile memory. 6. The method of claim 1 , further comprising: prior to storing the hibernation file, trimming the contents of the previous hibernation file. 7. The method of claim 1 , further comprising: prior to storing the hibernation file, performing a garbage collection. 8. The method of claim 1 , wherein the portion is fragmented and comprises at least two subportions that are non-adjacent in a logical address space of the second nonvolatile memory. 9. The method of claim 1 , wherein, at the time the hibernate command is received, the portion further comprises erased memory blocks. 10. A storage system comprising: a first nonvolatile memory; a second nonvolatile memory comprising a plurality of memory blocks; and a storage controller configured to receive a hibernate command from a host and a hibernation file associated with the host, wherein the storage controller erases non-dirty data stored in a portion of the second nonvolatile memory, the portion excluding memory blocks storing dirty data, which represents valid data stored in the second nonvolatile memory but not in the first nonvolatile memory, and upon receiving the hibernate command, the storage controller stores the hibernation file into the portion of the second nonvolatile memory, wherein the non-dirty data represents valid data stored in both the first nonvolatile memory and the second nonvolatile memory, and copies of the non-dirty data and the dirty data are preserved during a garbage collection process. 11. The storage system of claim 10 , wherein the first nonvolatile memory comprises a magnetic memory, and the storage controller, prior to storing the hibernation file into the portion of the second nonvolatile memory, initiates parking of a magnetic head in the magnetic memory. 12. The storage system of claim 10 , wherein the storage controller, prior to receiving the hibernate command, maintains a data storage capacity of the portion to be sufficient to store an expected size of the hibernation file. 13. The storage system of claim 12 , wherein the storage controller, in response to a write command, when the data storage capacity of the portion is less than a predetermined threshold, stores data of the write command into the first nonvolatile memory and not into the second nonvolatile memory. 14. The storage system of claim 13 , wherein the predetermined threshold is no greater than the data storage capacity of the second nonvolatile memory. 15. The storage system of claim 10 , wherein the storage controller, prior to storing the hibernation file, trims the contents of the previous hibernation file. 16. The storage system of claim 10 , wherein the storage controller, prior to storing the hibernation file, performs a garbage collection. 17. The storage system of claim 10 , wherein the portion is fragmented and comprises at least two subportions that are non-adjacent in a logical address space of the second nonvolatile memory. 18. The storage system of claim 10 , wherein, at the time the hibernate command is received, the portion further comprises erased memory blocks.

Assignees

Inventors

Classifications

  • Suspend and resume; Hibernate and awake · CPC title

  • Hybrid disk, e.g. using both magnetic and solid state storage devices · CPC title

  • G06F3/061Primary

    Improving I/O performance · CPC title

  • Allocation control and policies · CPC title

  • Hybrid storage device · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9804784B2 cover?
A hybrid drive and associated methods provide low-overhead storage of a hibernation file in the hybrid hard disk drive. During operation, the hybrid drive allocates a portion of solid-state memory in the drive that is large enough to accommodate a hibernation file associated with a host device of the hybrid drive. In addition to the erased memory blocks that are normally present during operatio…
Who is the assignee on this patent?
Toshiba Kk
What technology area does this patent fall under?
Primary CPC classification G06F3/061. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Oct 31 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).