The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.
The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.
Patent No.:
Date of Patent:
Oct. 30, 2001
Filed:
Apr. 03, 1998
Robert N. Hasbun, Placerville, CA (US);
David A. Edwards, Orangevale, CA (US);
Andrew H. Gafken, Folsom, CA (US);
Christopher J. Spiegel, Carmichael, CA (US);
Intel Corporation, Santa Clara, CA (US);
Abstract
Methods of reliably allocating, writing, reading, de-allocating, re-allocating, and reclaiming space within a nonvolatile memory having a bifurcated storage architecture are described. Allocation, writing, reading, de-allocating, re-allocating, and reclamation are handled by a memory manager. The memory manager tracks the progress of each process during execution in order to detect whether a selected process was interrupted for purposes of recovery. The nonvolatile memory is recovered to a known state during initialization. Initialization includes the step of determining a recovery state from a recovery state lookup table. A selected recovery process is selected in accordance with the recovery state lookup table. A restart level for the selected process is determined from a corresponding restart state lookup table. The selected process is then restarted at the restart level. In one embodiment, a method of managing a nonvolatile memory includes the step of identifying an interrupted process from at least one of an allocation, a reclamation, a configuration header reclaim, and a re-allocation process initiated on the nonvolatile memory. A recovery process is selected for the interrupted process. An entry point into the recovery process is determined. The selected recovery process is then restarted at the entry point.