This method solves the problems associated with contiguous allocation.
Here the blocks of a single file can be scattered anywhere on the disk.
The reason because the entire file is implemented as a Linked List.
Each file is a linked list of disk blocks.
The directory maintained by the Operating System contains a pointer to the first and the last blocks of a file.
Each block of a file contains a pointer to the next block after it in the list.
For creating a new file, we need to just create a new entry in the directory and not to search for sufficient space as in contiguous.
There's no external fragmentation since each request is for one block.
This method is inefficient for direct files. It works perfectly for Sequential access only, space needs to be allocated in block for pointers and error in pointer links can lead to Invalid read.