The invention provides a method and system for improving data access of a
reliable file system. In a first aspect of the invention, the file system
determines the relative vacancy of a collection of storage blocks, herein
called an "allocation area". This is accomplished by recording an array
of binary numbers. Each binary number in the array describes the vacancy
of a collection of storage blocks. The file system examines these binary
numbers when attempting to record file blocks in relatively contiguous
areas on a storage medium, such as a hard disk. When a request to write
to disk occurs, the system determines the average vacancy of all the
allocation areas and queries the allocation areas for individual vacancy
rates such as sequentially. The system preferably writes file blocks to
the allocation areas that are above a threshold related to the average
storage block vacancy of the file system. If the file in the request to
write is larger than the selected allocation area, the next allocation
area above the threshold is preferably used to write the remaining blocks
of the file.