FILE SYSTEM FOR STORAGE DEVICE WHICH USES DIFFERENT CLUSTER SIZES
First Claim
1. A storage system, comprising:
- a storage device; and
one or more processors executing code to manage the storage device, the one or more processors;
a. provides data to be stored in one or more files in the storage device, each file comprising a plurality of sectors of data;
b. without knowing a size of the one or more files, allocates at least two clusters in the storage device for storing the one or more files, wherein the at least two clusters are in a common partition of the storage device, and wherein a first one of the allocated clusters is allocated to a first portion of the storage device and contains a first number of sectors, a second one of the allocated clusters is allocated to a different, second portion of the storage device and contains a second number of sectors, and the first and second numbers of sectors are different from each other; and
c. stores the one or more files in the allocated clusters.
1 Assignment
0 Petitions
Accused Products
Abstract
A file system for managing files in a storage device in a more optimal way by providing allocation units or clusters with non-uniform sizes. Clusters of at least two different sizes are allocated in a common partition of a storage device, such as a hard disk drive, other magnetic media, optical media and semiconductor storage such as flash memory and other non-volatile memory. At least two clusters are allocated in the storage device for storing the files. First and second allocated clusters are allocated to first and second portions of the storage device, respectively, and contain different numbers of sectors. One or more optimum cluster sizes can be selected for storing the files without knowing the size of the files in advance, based on factors such as whether compression is to be performed, file type, access patterns of a calling application, and an identification of the calling application.
-
Citations
19 Claims
-
1. A storage system, comprising:
-
a storage device; and one or more processors executing code to manage the storage device, the one or more processors; a. provides data to be stored in one or more files in the storage device, each file comprising a plurality of sectors of data; b. without knowing a size of the one or more files, allocates at least two clusters in the storage device for storing the one or more files, wherein the at least two clusters are in a common partition of the storage device, and wherein a first one of the allocated clusters is allocated to a first portion of the storage device and contains a first number of sectors, a second one of the allocated clusters is allocated to a different, second portion of the storage device and contains a second number of sectors, and the first and second numbers of sectors are different from each other; and c. stores the one or more files in the allocated clusters. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A computer-implemented method for writing data to a storage device, comprising:
-
a. providing data to be stored in one or more files in the storage device, each file comprising a plurality of sectors of data; b. without knowing a size of the one or more files, allocating at least two clusters in the storage device for storing the one or more files, wherein the at least two clusters are in a common partition of the storage device, and wherein a first one of the allocated clusters is allocated to a first portion of the storage device and contains a first number of sectors, a second one of the allocated clusters is allocated to a different, second portion of the storage device and contains a second number of sectors, and the first and second numbers of sectors are different from each other; and c. storing the one or more files in the allocated clusters. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19)
-
Specification