System and method for information control block tracking streams for universal disk format file systems
AssigneeMicrosoft Corporation
InventorThomas Ewan Jolly
Life of this patent
Estimating the term…
Abstract
A system and method for providing information control block (ICB) tracking streams for Universal Disk Format (UDF) file systems. The streams assist in tracking the location of the ICBs on the media, and promote clustering of ICBs. Both of these factors increase the speed of the UDF file system by greatly reducing the time to scan and locate files.
Claims24
A method for using information control block tracking streams in a Universal Disk Format (UDF) file system, the method comprising:
- allocating at least one extent on a UDF volume for storing information control blocks, the at least one extent comprising logical blocks arranged to store an information control block;
- setting bits within a volume freespace bitmap that correspond to the at least one extent, the set bits indicating that the logical blocks have been allocated;
- generating an extent container stream that includes the at least one extent, the at least one extent identified by an allocation descriptor within the extent container stream;
- generating a bitmap stream that includes a bit corresponding to each logical block within the extent container stream;
- and
- setting particular bits within the bit stream, wherein the particular bits correspond to logical blocks that include information control blocks.
A computer-readable medium having computer-executable components, comprising:
- a first component for representing at least one extent of logical blocks within a Universal Disk Format (UDF) volume, wherein the at least one extent is allocated to store information control blocks;
- and
- a second component that includes bits, wherein each bit corresponds to a logical block within the first component such that particular bits are set when their corresponding logical blocks include information control blocks.
The computer-readable medium of claim 12, wherein the at least one extent within the first component is arranged according to a stream allocation unit, wherein the stream allocation unit corresponds to a predetermined number of logical blocks, and the first logical block of the stream allocation unit has a logical block number which is an integer multiple of the predetermined number of logical blocks.
A computer-readable medium encoded with a data structure, comprising:
- an extent container stream that includes at least one extent and each extent further includes a predetermined number of blocks corresponding to a predetermined number of logical blocks on a Universal Disk Format (UDF) volume, wherein the predetermined number of logical blocks are allocated for storing information control blocks;
- and
- a bitmap stream that includes a predetermined number of bits corresponding to the predetermined number of blocks within the extent container stream, wherein each bit is set when the block within the extent container stream corresponding to that bit is storing an information control block.
A computer-readable medium having computer-executable instructions for using information control block tracking streams in a Universal Disk Format (UDF) file system, the instructions comprising:
- generating an extent container stream that includes at least one extent, wherein each extent includes a predetermined number of blocks corresponding to a predetermined number of logical blocks on a UDF volume;
- generating an allocation descriptor for each extent within extent container stream, wherein the allocation descriptor identifies each extent within the extent container stream;
- setting bits within a volume freespace bitmap that correspond to each extent, the set bits indicating that the logical blocks have been allocated;
- and
- generating a bitmap stream that includes a predetermined number of bits corresponding to the predetermined number of blocks within the extent container stream, wherein each bit is set when the block corresponding to that bit is storing an information control block or is unavailable for storing an information control block..
Dependencies are inferred from the claim text.