Partitioning a directory while accessing the directory
AssigneeSymantec Corporation
InventorsAnindya Banerjee, Maneesh Pusalkar
Life of this patent
Estimating the term…
Abstract
A process for reading entries in a directory is initiated. A first index is maintained to indicate how far the read has progressed in the directory. If, during execution of the process, the directory is partitioned into subdirectories, then a second index is maintained for each of the subdirectories to indicate how far the read has progressed in each of the subdirectories. A third index that indicates how far the read has progressed in the partitioned directory is also maintained.
Claims20
A non-transitory computer-readable storage medium having computer-executable instructions for causing a computer system to perform a method comprising:
- initiating a process comprising a read of entries in a directory, wherein said process is associated with a first thread that is configured to execute in parallel with a second thread;
- maintaining a first index to indicate how far said read has progressed in said directory;
- maintaining a second index for each of a plurality of subdirectories in the event said directory is partitioned, during execution of said process, to create a partitioned directory comprising said plurality of subdirectories to indicate how far said read has progressed in each of said subdirectories;
- maintaining a third index to indicate how far said read has progressed in said partitioned directory;
- and
- clearing values for said first and second indices after said process is completed across the plurality of subdirectories.
A computer system comprising:
- a processor;
- and
- memory coupled to said processor and having stored therein instructions that, when executed by said computer system, cause said computer system to execute a method comprising:
- reading a subset of a plurality of entries in a directory to generate a listing of said plurality of entries, wherein said reading is associated with a first thread that is configured to execute in parallel with a second thread;
- setting a first index to indicate said subset has been read;
- partitioning, before all entries in said directory have been read, said directory to form a partitioned directory comprising a plurality of subdirectories;
- setting, for each of said subdirectories, a second index to indicate which entries in said subdirectories have been read;
- setting a third index to indicate how far said read has progressed in said partitioned directory;
- and
- clearing values for said first and second indices after said reading is completed across said subdirectories.
A non-transitory computer-readable storage medium having computer-executable components comprising:
- an operating system;
- and
- a file system coupled to said operating system, said file system comprising a directory comprising a plurality of entries;
- wherein in response to a call issued by said operating system as part of a read operation, said file system is configured to return a number of said entries to said operating system and maintain a first index to indicate entries that have been returned to said operating system, and wherein said read operation is associated with a first thread that is configured to execute in parallel with a second thread;
- wherein in the event said directory is partitioned, during execution of said read operation, to create a partitioned directory comprising a plurality of subdirectories, said file system is further configured to maintain:
- a second index for each of said subdirectories to indicate entries in said subdirectories that have been returned to said operating system, and
- a third index to indicate how far said read operation has progressed in said partitioned directory,
- wherein said first and second indices are cleared after said read operation is completed across all of said subdirectories.
Dependencies are inferred from the claim text.