Extending cluster allocations in an extensible file system
First Claim
Patent Images
1. In a computing device that implements a file system for storing data on a storage medium, the storage medium comprising a plurality of clusters, a method comprising:
- storing, on the storage medium, information defining a file allocation table associated with the file system;
storing, on the storage medium, an allocation bitmap comprising, for each cluster of the storage medium, an entry that indicates whether the cluster is allocated or is available for storage;
storing, on the storage medium, a directory entry specifying information concerning data in a directory of the file system, wherein the directory entry comprises a flag that indicates that the data is stored in a chain of contiguous clusters, the directory entry further comprising information specifying a starting cluster of the chain of contiguous clusters and information indicative of a size of the chain of contiguous clusters;
obtaining a request to delete the data;
determining from the flag in the directory entry for the data that the data is stored in the chain of contiguous clusters;
identifying the contiguous clusters of the chain based on the information from the directory entry specifying the starting cluster of the chain and indicative of the size of the chain, without traversing the file allocation table; and
updating the entries of the allocation bitmap corresponding to each of the identified clusters of the chain of contiguous clusters to indicate that each cluster is available for storage.
0 Assignments
0 Petitions
Accused Products
Abstract
An extensible file system format for portable storage media is provided. The extensible file system format includes the specification of primary and secondary directory entry types that may be custom defined. The primary and secondary directory entry types can be further classified as critical and benign directory entries. The directory entry types can define whether a cluster chain corresponding to a file can be contiguously allocated.
174 Citations
12 Claims
-
1. In a computing device that implements a file system for storing data on a storage medium, the storage medium comprising a plurality of clusters, a method comprising:
-
storing, on the storage medium, information defining a file allocation table associated with the file system; storing, on the storage medium, an allocation bitmap comprising, for each cluster of the storage medium, an entry that indicates whether the cluster is allocated or is available for storage; storing, on the storage medium, a directory entry specifying information concerning data in a directory of the file system, wherein the directory entry comprises a flag that indicates that the data is stored in a chain of contiguous clusters, the directory entry further comprising information specifying a starting cluster of the chain of contiguous clusters and information indicative of a size of the chain of contiguous clusters; obtaining a request to delete the data; determining from the flag in the directory entry for the data that the data is stored in the chain of contiguous clusters; identifying the contiguous clusters of the chain based on the information from the directory entry specifying the starting cluster of the chain and indicative of the size of the chain, without traversing the file allocation table; and updating the entries of the allocation bitmap corresponding to each of the identified clusters of the chain of contiguous clusters to indicate that each cluster is available for storage. - View Dependent Claims (3, 4, 5, 6, 7)
-
-
2. A computing device that implements a file system for storing data on a storage medium, the storage medium comprising a plurality of clusters, the computing device configured to:
-
store, on the storage medium, information defining a file allocation table associated with the file system; store, on the storage medium, an allocation bitmap comprising, for each cluster of the storage medium, an entry that indicates whether the cluster is allocated or is available for storage; store, on the storage medium, a directory entry specifying information concerning data in a directory of the file system, wherein the directory entry comprises a flag that indicates that the data is stored in a chain of contiguous clusters, the directory entry further comprising information specifying a starting cluster of the chain of contiguous clusters and information indicative of a size of the chain of contiguous clusters; obtain a request to delete the data; determine from the flag in the directory entry for the data that the data is stored in the chain of contiguous clusters; identify the contiguous clusters of the chain based on the information from the directory entry specifying the starting cluster of the chain and indicative of the size of the chain, without traversing the file allocation table; and update the entries of the allocation bitmap corresponding to each of the identified clusters of the chain of contiguous clusters to indicate that each cluster is available for storage. - View Dependent Claims (8, 9, 10, 11, 12)
-
Specification