Linked List Allocation

Linked List allocation solves all problems of contiguous allocation. In linked list allocation, each file is considered as the linked list of disk blocks. However, the disks blocks allocated to a particular file need not to be contiguous on the disk. Each disk block allocated to a file contains a pointer which points to the next disk block allocated to the same file.


os linked list allocation

Advantages

  1. There is no external fragmentation with linked allocation.
  2. Any free block can be utilized in order to satisfy the file block requests.
  3. File can continue to grow as long as the free blocks are available.
  4. Directory entry will only contain the starting block address.

Disadvantages

  1. Random Access is not provided.
  2. Pointers require some space in the disk blocks.
  3. Any of the pointers in the linked list must not be broken otherwise the file will get corrupted.
  4. Need to traverse each block.