Which file allocation method provides best access time for sequential access?
2026
Which file allocation method provides best access time for sequential access?
Answer: A. Contiguous allocation — Concept: A file allocation method decides where a file's data blocks are placed on the disk and how the file system finds the next block. The time to serve a…
- A.
Contiguous allocation
- B.
Linked allocation
- C.
Indexed allocation
- D.
Hashed allocation
Attempted by 293 students.
Show answer & explanation
Correct answer: A
Concept: A file allocation method decides where a file's data blocks are placed on the disk and how the file system finds the next block. The time to serve a block request is dominated by seek time — the mechanical movement of the read/write head to the required track — plus any extra I/O needed only to discover where the next block lies. Sequential access means reading a file's blocks in their logical order, from the first block to the last.
Application: Apply that idea to each way of laying a file out on disk.
Contiguous allocation: the directory entry stores a start block and a length, so logical block i is physical block start + i. Reading in order steps to the physically adjacent block each time; after the first positioning there is almost no head movement and nothing extra to read.
Linked allocation: blocks may lie anywhere and each block carries a pointer to its successor, so block i + 1 is located only after block i has been read. A sequential scan follows that pointer chain across scattered tracks, and each step can cost a full seek.
Indexed allocation: every pointer of the file is collected in one index block, which must be read into memory before any data block can be fetched. That extra read is paid up front and the data blocks may still be scattered, so the head keeps moving between them.
Hashed allocation: hashing is a key-to-bucket lookup technique used for directory search and for hash-based file organisation; it is not one of the three standard disk block-allocation schemes.
Cross-check: Compare the three allocation schemes on what a start-to-finish read actually costs.
Method | Block placement | Locating the next block | Cost of a sequential read |
|---|---|---|---|
Contiguous | Consecutive blocks | Arithmetic: start + i | One seek, then adjacent blocks |
Linked | Scattered | Pointer inside the current block | Up to one seek per block |
Indexed | Scattered | Index block read first | Index read plus a seek per block |
Result: Contiguous allocation gives the best access time for sequential access.
One confusion is worth clearing up. Linked allocation is often described as "supporting only sequential access". That statement is about which access patterns are possible, not about which one is fastest: linked allocation cannot do efficient direct access at all, while its sequential reads still chase pointers across the disk. Contiguous allocation supports both sequential and direct access, and it is the layout that minimises seek time when a file is read from start to finish. Indexed allocation is chosen for efficient random access without external fragmentation, not for the shortest sequential read.