Explain the trade-offs between contiguous, noncontiguous linked, and noncontiguous indexed file allocation. In particular, note the effect on sequential and random access methods ?
Solution
Contiguous File Allocation
+ fast sequential access
+ fast random access
+ low disk space overhead
- external fragmentation
- hard to grow file
Linked File Allocation
+ no external fragmentation
+ easy to grow file
- very slow random access (must search through the whole list)
- potentially slow sequential access (if the list blocks are randomly allocated over the disk surface)
- some disk space overhead to store pointers to the next block.
Indexed File Allocation
+ i-node in memory only when file is open
+ Easy random access
- What if each a file grows beyond the limit of fixed number of disk addresses?
+ Pros
- Cons
.