IP Library › Granted Patent US 10,127,114
Granted Patent B2
US 10,127,114 · App. 15/113,812 · Granted Nov 13, 2018

Method of file system design and failure recovery with non-volatile memory

Inventors: Cheng Chen (Singapore, SG); Qingsong Wei (Singapore, SG); Jun Yang (Singapore, SG); Chundong Wang (Singapore, SG); Mingdi Xue (Singapore, SG)
Assignee: Agency for Science, Technology and Research
G06F11/1438G06F11/1471G06F12/0246G06F2201/80G06F2201/805
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,127,114
App. No.
15/113,812
Granted
Nov 13, 2018
Kind
B2
Abstract

A method of rebooting a file system using a non-volatile memory is provided. The method comprising persistently storing critical information in the non-volatile memory, the critical information indicating a status of the file system; in response to a predetermined event, obtaining critical information of the file system stored in the non-volatile memory; determining if the file system has crashed based on the critical information; and rebooting from metadata in the non-volatile memory if it is determined that the file system has crashed.

Claims (39)

1. A method of rebooting a file system using a non-volatile memory, the method comprising:

persistently storing critical information in the non-volatile memory, the critical information indicating a status of the file system;

in response to a predetermined event, obtaining critical information of the file system stored in the non-volatile memory;

determining if the file system has crashed based on the critical information; and

rebooting from metadata in the non-volatile memory if it is determined that the file system has crashed, wherein the file system is in a duplex state before the predetermined event and is configured to switch to a single state when it is determined that the file system has crashed to allow the metadata to be flushed to a block device.

2. The method according to claim 1 , wherein the critical information comprises a data structure indicating the status of the file system.

3. The method according to claim 1 , wherein the metadata is linked to at least one normal file system structure.

4. The method according to claim 1 , further comprising initiating a failure detection process when a failure is detected in the file system.

5. The method according to claim 4 , wherein the critical information indicates at least one of a normal-off status, a running status and an abnormal-off status,

wherein when the critical information is configured to change from the normal-off status to the running status during a start-up procedure,

wherein when the critical information is configured to change to the normal-off status after a shutting-down procedure, and

wherein when the critical information is configured to change to the abnormal-off status when a failure is detected in the file system.

6. The method according to claim 5 , further comprising determining if the file system has been properly shut down after the shutting-down procedure.

7. The method according to claim 1 , further comprising persistently storing the metadata in an area of the non-volatile memory such that the metadata will not be overwritten.

8. The method according to claim 1 , wherein the predetermined event is one during which the file system has crashed and a failure is detected in the file system.

9. The method according to claim 1 , wherein the file system is further configured to switch back to the duplex state when the metadata is flushed to the block device.

10. The method according to claim 1 , wherein when the file system has crashed all locked metadata for files of the non-volatile memory are flushed to the block device, and the metadata is not pinned in memory until the file system recovers but written to the block device.

11. A non-transitory computer readable storage medium comprising a set of instructions executable by a processor, the non-transitory computer readable storage medium for rebooting a file system using a non-volatile memory, the set of instructions operable to:

persistently store critical information in the non-volatile memory, the critical information indicating a status of the file system;

in response to a predetermined event, obtain critical information of the file system stored in the non-volatile memory,

determine if the file system has crashed based on the critical information;

flush metadata for files of the non-volatile memory to a block device that allows the metadata to be synchronized to the block device upon determining that the file system crashed, wherein the file system is in a duplex state before the predetermined event and is configured to switch to a single state when it is determined that the file system has crashed; and

reboot from the metadata in the non-volatile memory if it is determined that the file system has crashed.

12. The non-transitory computer readable storage medium according to claim 11 , wherein the critical information comprises a data structure indicating the status of the file system.

13. The non-transitory computer readable storage medium according to claim 11 wherein the metadata is liked to at least one normal file system structure.

14. The non-transitory computer readable storage medium according to claim 11 , wherein the set of instructions is further operable to initiate a failure detection process when a failure is detected in the file system.

15. The non-transitory computer readable storage medium according to claim 11 , wherein the critical information indicates at least one of a normal-off status, a running status and an abnormal-off status,

wherein when the critical information is configured to change from the normal-off status to the running status during a start-up procedure,

wherein when the critical information is configured to change to the normal-off status after a shutting-down procedure, and

wherein when the critical information is configured to change to the abnormal-off status when a failure is detected in the file system.

16. The non-transitory computer readable storage medium according to claim 14 , wherein the set of instructions is further operable to determine if the file system has been properly shut down after the shutting-down procedure.

17. The non-transitory computer readable storage medium according to claim 11 , wherein the set of instructions is operable to persistently store the metadata in the non-volatile memory.

18. The non-transitory computer readable storage medium according to claim 11 , wherein the predetermined event is one during which the file system has crashed and a failure is detected in the file system.

19. A system for rebooting a file system, the system comprising:

a non-volatile memory configured to persistently store critical information, the critical information indicating a status of the file system;

a processor configured to:

obtain critical information of the file system stored in the non-volatile memory in response to a predetermined event,

determine if the file system has crashed based on the critical information; and

reboot from metadata in the non-volatile memory if it is determined that the file system has crashed, wherein the file system is in a duplex state before the predetermined event and switches to a single state when a determination is made that the file system has crashed to allow the metadata to be flushed to a block device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 22, 2016
From: CHEN, CHENG; WEI, QINGSONG; YANG, JUN; WANG, CHUNDONG; XUE, MINGDI
To: AGENCY FOR SCIENCE, TECHNOLOGY AND RESEARCH
Reel/Frame 039238/0318 →
Priority Claims (1)
SG 2014005599 · Jan 24, 2014 · national
Continuity (1)
Related Publication 20160342479A1 · Nov 24, 2016