Method and system for performing deferred file removal in a file system
First Claim
1. A method for removing a file from a system, the system including a storage device and a virtual storage, the file having associated metadata indicating a location of the file on the storage device, a first copy of the associated metadata residing on the virtual storage, a second copy of the associated metadata residing on the storage device, the method comprising the steps of:
- (a) marking the file as removed;
(b) updating the second copy of the metadata substantially immediately if the system is to run out of space on the storage device and a next scheduled update of the second copy of the associated metadata has not occurred; and
(c) indicating that the location is available for storing data substantially immediately if the system is to run out of space on the storage device and the next scheduled update has not occurred.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method for removing a file from a system is disclosed. The system includes a storage device and a virtual storage. The file has associated metadata that indicates a location of the file on the storage device. A first copy of the associated metadata resides on the virtual storage. A second copy of the associated metadata resides on the storage device. The system and method include marking the file as removed and updating the second copy of the associated metadata substantially immediately if the system is to run out of space on the storage device and a next scheduled update of the second copy of the associated metadata has not occurred. The system and method further include indicating that the location is available for storing data substantially immediately if the system is to run out of space on the storage device and the next scheduled update has not occurred. In one aspect, the system and method also include updating the second copy of the associated metadata during the next scheduled update if the system is not to run out of space before the next scheduled update. In this aspect, the system and method also include indicating that the location is available for storing data during the next scheduled update if the system is not to run out of space before the next scheduled update.
-
Citations
19 Claims
-
1. A method for removing a file from a system, the system including a storage device and a virtual storage, the file having associated metadata indicating a location of the file on the storage device, a first copy of the associated metadata residing on the virtual storage, a second copy of the associated metadata residing on the storage device, the method comprising the steps of:
-
(a) marking the file as removed;
(b) updating the second copy of the metadata substantially immediately if the system is to run out of space on the storage device and a next scheduled update of the second copy of the associated metadata has not occurred; and
(c) indicating that the location is available for storing data substantially immediately if the system is to run out of space on the storage device and the next scheduled update has not occurred. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
(d) updating the second copy of the associated metadata during the next scheduled update if the system is not to run out of space before the next scheduled update; and
(e) indicating that the location is available for storing data during the next scheduled update if the system is not to run out of space before the next scheduled update.
-
-
3. The method of claim 2 wherein the virtual storage further includes a free space map, and wherein the step (c) of indicating that the location is available for storing data substantially immediately further includes the step of:
(c1) adding the location to the free space map.
-
4. The method of claim 3 wherein the associated metadata further includes a map and wherein the step (b) of updating the second copy of the associated metadata substantially immediately further includes the step of:
(b2) removing the map.
-
5. The method of claim 2 wherein the virtual storage further includes a free space map, and wherein the step (e) of indicating that the location is available for storing data during the next scheduled update further includes the step of:
(e1) adding the location to the free space map.
-
6. The method of claim 5 wherein the associated metadata further includes a map and wherein the step (d) of updating the second copy of the metadata during the next scheduled update further includes the step of:
(d2) removing the map.
-
7. The method of claim 2 wherein the file further includes a file name in a directory, and wherein the marking step (a) further comprises the steps of:
(a1) rewriting a directory without the file name.
-
8. The method of claim 2 wherein the system further utilizes a UNIX operating system.
-
9. The method of claim 2 wherein the step (b) of updating the second copy of the associated metadata substantially immediately further includes the step of:
(b1) updating the second copy of the associated metadata during a synchronization of the virtual storage and the storage device.
-
10. The method of claim 9 wherein the step (d) of updating the second copy of the metadata during the next scheduled update further includes the step of:
(d1) updating the second copy of the associated metadata during a next scheduled synchronization of the virtual storage and the storage device.
-
11. A computer-readable medium containing a program for removing a file from a system, the system including a storage device and a virtual storage, the file having associated metadata indicating a location of the file on the storage device, a first copy of the associated metadata residing on the virtual storage, a second copy of the associated metadata residing on the storage device, the program comprising instructions for:
-
(a) marking the file as removed;
(b) updating the second copy of the associated metadata substantially immediately if the system is to run out of space on the storage device and a next scheduled update of the second copy of the associated metadata has not occurred; and
(c) indicating that the location is available for storing data substantially immediately if the system is to run out of space on the storage device and the next scheduled update has not occurred.
-
-
12. A computer-readable medium containing a program for removing a file from a system, the system including a storage device and a virtual storage having a free space map, the file having a file name and associated metadata, the associated metadata including a map indicating a location of the file on the storage device, a first copy of the associated metadata residing in the virtual storage, and a second copy of the associated metadata residing on the storage device, the file name residing in a directory, the program comprising instructions for:
-
(a) marking the file as removed by rewriting a directory without the file name;
(b) removing the map for the second copy of the associated metadata substantially immediately if the system is to run out of space on the storage device and a next scheduled update of the second copy of the associated metadata has not occurred;
(c) adding the location to the free space map substantially immediately if the system is to run out of space on the storage device and the next scheduled update has not occurred;
(d) removing the map for the second copy of the associated metadata during the next scheduled update if the system is not to run out of space before the next scheduled update; and
(e) adding the location to the free space map during the next scheduled update if the system is not to run out of space before the next scheduled update.
-
-
13. A system for storing and removing a file having associated metadata, the system comprising:
-
a virtual storage including a first copy of the associated metadata;
a storage device coupled with the virtual storage, the storage device including a location of the file, the associated metadata indicating the location of the file, a second copy of the associated metadata residing on the storage device;
means coupled with the virtual storage and the storage device for removing the file, the file removing means including means for marking the file as removed;
means coupled with the marking means for updating the second copy of the associated metadata; and
means coupled with the updating means for indicating that the location is available for storing data;
wherein the updating means update the second copy of the associated metadata substantially immediately if the system is to run out of space on the storage device and a next scheduled update of the second copy of the associated metadata has not occurred; and
wherein the indicating means indicate that the location is available for storing data substantially immediately if the system is to run out of space on the storage device and the next scheduled update has not occurred. - View Dependent Claims (14, 15, 16, 17, 18, 19)
the updating means update the second copy of the associated metadata during the next scheduled update if the system is not to run out of space before the next scheduled update; and
the indicating means indicate that the location is available for storing data during the next scheduled update if the system is not to run out of space before the next scheduled update.
-
-
15. The system of claim 14 wherein the virtual storage includes a free space map and wherein:
-
the indicating means add the location to the free space map substantially immediately if the system is to run out of space on the storage device and the next scheduled update has not occurred; and
the indicating means add the location to the free space map during the next scheduled update if the system is not to run out of space before the next scheduled update.
-
-
16. The system of claim 15 wherein the associated metadata further includes a map and wherein:
-
the updating means remove the map for the second copy of the associated metadata substantially immediately if the system is to run out of space on the storage device and the next scheduled update has not occurred; and
the updating means remove the map for the second copy of the associated metadata during the next scheduled update if the system is not to run out of space before the next scheduled update.
-
-
17. The system of claim 13 wherein the updating means further update the second copy of the associated metadata during a synchronization of the virtual storage and the storage device.
-
18. The system of claim 13 wherein the file further includes a file name in a directory, and wherein the marking means further comprises:
means for rewriting a directory without the file name.
-
19. The system of claim 13 wherein the system further utilizes a UNIX operating system.
Specification