Consider a UNIX file system with 10 direct pointers 1 single
Consider a UNIX file system with 10 direct pointers, 1 single-indirect pointer, 1 double-indirect pointer, and 1 triple-indirect pointer in the i-node. Each block holds 2048 disk addresses. The block size is 4KByte.
- Assume that the operating system has already read the i-node for your file into main memory (i.e., the file buffer cache). How many disk reads are required to read data block number 800 into memory? describe each disk read.
Solution
Size of Disk Block = 1Kbyte
Disk Blocks address = 32bits,
but 48 bit integers are used for address
Therefore address size = 6 bytes
No of addresses per block = 1024/6 = 170.66
Therefore 170 2^8 addresses per block can be stored
Maximum File Size = 10 Direct + 1 Single Indirect +
1 Double Indirect + 1 Triple Indirect
= 10 + 28 + 28*28 + 28*28*28
224 Blocks
Since each block is of size 210
Maximum files size = 224 * 210
= 234

