Techniques for managing context information for a storage device

US2019102101A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2019102101-A1
Application numberUS-201715721081-A
CountryUS
Kind codeA1
Filing dateSep 29, 2017
Priority dateSep 29, 2017
Publication dateApr 4, 2019
Grant date

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.

Disclosed herein are techniques for managing context information for data stored within a non-volatile memory of a computing device. According to some embodiments, the method can include (1) loading, into a volatile memory of the computing device, the context information from the non-volatile memory, where the context information is separated into a plurality of silos, (2) writing transactions into a log stored within the non-volatile memory, and (3) each time a condition is satisfied: (i) identifying a next silo of the plurality of silos to be written into the non-volatile memory, (ii) updating the next silo to reflect the transactions that apply to the next silo, and (iii) writing the next silo into the non-volatile memory. In turn, when an inadvertent shutdown of the computing device occurs, the silos of which the context information is comprised can be sequentially accessed and restored in an efficient manner.

First claim

Opening claim text (preview).

1 . A method for managing context information for data stored within a non-volatile memory of a computing device, the method comprising, at the computing device: loading, into a volatile memory of the computing device, the context information from the non-volatile memory, wherein the context information is logically separated into a plurality of silos; writing transactions into a transaction log stored within the non-volatile memory, wherein the transaction log is different from the context information; and each time a condition is satisfied: identifying a next silo of the plurality of silos to be written into the non-volatile memory, updating the next silo to reflect my transactions that apply to the next silo, and writing the next silo into the non-volatile memory. 2 . The method of claim 1 , wherein direct memory access (DMA) is utilized to write the plurality of silos into the non-volatile memory. 3 . The method of claim 1 , wherein: a number of the transactions is maintained, the condition is satisfied each time the number satisfies a particular threshold, and the number is reset each time the condition is satisfied. 4 . The method of claim 1 , wherein each silo of the plurality of silos includes: metadata associated with the silo; a first memory structure that includes a plurality of first-tier entries; and a second memory structure that includes a plurality of second-tier entries. 5 . The method of claim 4 , wherein, for a given silo of the plurality of silos, each first-tier entry of the plurality of first-tier entries references (1) an area of memory within the non-volatile memory, or (2) at least one second-tier entry within the second memory structure. 6 . The method of claim 5 , wherein, for a given silo of the plurality of silos, each second-tier entry of the plurality of second-tier entries references an area of memory within the non-volatile memory. 7 . The method of claim 4 , wherein the first memory structure and the second memory structure are not contiguously stored within the volatile memory and/or the non-volatile memory. 8 . The method of claim 1 , wherein each silo of the plurality of silos is locked prior to updating the silo. 9 . At least one non-transitory computer readable storage medium configured to store instructions that, when executed by at least one processor, cause the at least one processor to carry out steps that include: identifying context information within a non-volatile memory, wherein the context information is separated into a plurality of silos; accessing a transaction log that is different from the context information, wherein the transaction log is stored within the non-volatile memory; and for each silo of the plurality of silos: loading the silo into a volatile memory, and in response to identifying, within the transaction log, that at least one transaction (i) applies to the silo, and (ii) occurred after a last write of the silo into the non-volatile memory: updating the silo to reflect the at least one transaction. 10 . The at least one non-transitory computer readable storage medium of claim 9 , further comprising, for each silo of the plurality of silos, and subsequent to updating the silo to reflect the at least one transaction: writing the silo into the non-volatile memory. 11 . The at least one non-transitory computer readable storage medium of claim 9 , wherein direct memory access (DMA) is utilized to write the plurality of silos between the volatile memory and the non-volatile memory. 12 . The at least one non-transitory computer readable storage medium of claim 9 , wherein each silo of the plurality of silos includes: metadata associated with the silo; a first memory structure that includes a plurality of first-tier entries; and a second memory structure that includes a plurality of second-tier entries. 13 . The at least one non-transitory computer readable storage medium of claim 12 , for each silo of the plurality of silos, updating the silo comprises updating at least one of the first memory structure or the second memory structure. 14 . A device, comprising: at least one non-volatile memory; at least one volatile memory; and at least one processor configured to: load, into the at least one volatile memory, context information from the at least one non-volatile memory, wherein the context information is separated into a plurality of silos; write transactions into a transaction log stored within the at least one non-volatile memory, wherein the transaction log is different from the context information; and each time a condition is satisfied: identify a next silo of the plurality of silos to be written into the at least one non-volatile memory, update the next silo to reflect transactions that apply to the next silo, and write the next silo into the at least one non-volatile memory. 15 . The device of claim 14 , wherein direct memory access (DMA) is utilized to write the plurality of silos into the at least one non-volatile memory. 16 . The device of claim 14 , wherein: a number of the transactions is maintained, the condition is satisfied each time the number satisfies a particular threshold, and the number is reset each time the condition is satisfied. 17 . The device of claim 14 , wherein each silo of the plurality of silos includes: metadata associated with the silo; a first memory structure that includes a plurality of first-tier entries; and a second memory structure that includes a plurality of second-tier entries. 18 . The device of claim 17 , wherein, for a given silo of the plurality of silos, each first-tier entry of the plurality of first-tier entries references (1) an area of memory within the at least one non-volatile memory, or (2) at least one second-tier entry within the second memory structure. 19 . The device of claim 18 , wherein, for a given silo of the plurality of silos, each second-tier entry of the plurality of second-tier entries references an area of memory within the at least one non-volatile memory. 20 . The device of claim 17 , wherein the first memory structure and the second memory structure are not contiguously stored within the at least one volatile memory and/or the at least one non-volatile memory.

Assignees

Inventors

Classifications

  • using burst mode transfer, e.g. direct memory access {DMA}, cycle steal (G06F13/32 takes precedence) · CPC title

  • Hybrid storage device · CPC title

  • G06F3/0647Primary

    Migration mechanisms · CPC title

  • in relation to throughput · CPC title

  • DMA · 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 US2019102101A1 cover?
Disclosed herein are techniques for managing context information for data stored within a non-volatile memory of a computing device. According to some embodiments, the method can include (1) loading, into a volatile memory of the computing device, the context information from the non-volatile memory, where the context information is separated into a plurality of silos, (2) writing transactions …
Who is the assignee on this patent?
Apple Inc
What technology area does this patent fall under?
Primary CPC classification G06F3/0647. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Apr 04 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 5 related publications on this page (citations in our corpus or others sharing the same primary CPC).