The file system sees a file as a series of blocks where the file physically exists on the disk. That disk block can only be accessed as a single unit using low-level read-block and write-block operations.
In a contiguous block allocation scheme, every file is mapped into a contiguous sequence of disk blocks. The FCB points to the first disk block. The file length, also maintained in the FCB, determines how many blocks are occupied by the file.
This means it is fast to access because you don’t have to go searching for blocks that are separated, but it also means you have to have large contiguous open segments on your disk drive and fragmentation may prevent a file from saving, thus you must routinely defrag your system, which can put wear and tear on your drive(s).
With a linked block allocation scheme, the blocks containing a file may be scattered throughout the disk. The FCB points to the first block and each block points to the logically next block.
This means that files can grow as long as there is space on the disk to store them, however, accessing the file will be slightly slower.
A clustered block allocation scheme links together sequences of contiguous blocks. The last block of any cluster points to the beginning of the next logical cluster. The last block also records the number of blocks belonging to the next cluster to facilitate direct access within each cluster. The number of blocks in the first cluster is recorded in the FCB along with the pointer.
A File Allocation Table (FAT) is an array where each entry corresponds to a disk block. The FAT keeps track of which disk blocks belong to a file by linking the blocks in a chain of indices.
DOS and early Windows used a FAT, which was 16 byte indexed locations, which limited how big a drive could get. It limited the number of clusters, as well as the size of those clusters. FAT32 dramatically expanded this, instead of limiting you to 64k clusters, you had over 2 Billion addresses, and that mean your cluster sizes were smaller, so small files didn’t waste as much space as well.
With FAT16 you’d get up to 32 and 64k block sizes, with FAT32, you could stay at 2 to 4k block sizes which kept your files from wasting so much space, and allowed you to put more files on a physical drive.
Disk Block Allocation was originally found on Access 2 Learn