EXT2 Sample data Structures

 

Inode Table

Inode # Length(bytes) Owner/Grp Permissions Ptr 1 Ptr 2 Ptr 3 Ptr 4 Ptr 5
2 300 root/bin drwxr-xr-x 10 0 0 0 0
Ptr 6 Ptr 7 Ptr 8 Ptr 9 Ptr 10 Ptr 11 Ptr 12 Ptr 13 (ind) Ptr14(double)
0 0 0 0 0 0 0 0 0
Inode # Length(bytes) Owner/Grp Permissions Ptr 1 Ptr 2 Ptr 3 Ptr 4 Ptr 5
3 300 root/bin drw-r-xr-x 11 0 0 0 0
Ptr 6 Ptr 7 Ptr 8 Ptr 9 Ptr 10 Ptr 11 Ptr 12 Ptr 13 (ind) Ptr14(double)
0 0 0 0 0 0 0 0 0
Inode # Length(bytes) Owner/Grp Permissions Ptr 1 Ptr 2 Ptr 3 Ptr 4 Ptr 5
4 300 root/bin drw-r-xr-x 13 0 0 0 0
Ptr 6 Ptr 7 Ptr 8 Ptr 9 Ptr 10 Ptr 11 Ptr 12 Ptr 13 (ind) Ptr14(double)
0 0 0 0 0 0 0 0 0
Inode # Length(bytes) Owner/Grp Permissions Ptr 1 Ptr 2 Ptr 3 Ptr 4 Ptr 5
5 200 root/bin drwxrwxrwx 12 0 0 0 0
Ptr 6 Ptr 7 Ptr 8 Ptr 9 Ptr 10 Ptr 11 Ptr 12 Ptr 13 (ind) Ptr14(double)
0 0 0 0 0 0 0 0 0
Inode # Length(bytes) Owner/Grp Permissions Ptr 1 Ptr 2 Ptr 3 Ptr 4 Ptr 5
6 11000 root/bin  rw-r--r-- 100 101 102 103 104
Ptr 6 Ptr 7 Ptr 8 Ptr 9 Ptr 10 Ptr 11 Ptr 12 Ptr 13 (ind) Ptr14(double)
105 106 108 109 110 111 0 0 0
Inode # Length(bytes) Owner/Grp Permissions Ptr 1 Ptr 2 Ptr 3 Ptr 4 Ptr 5
7 1200 root/bin  rw-r----- 1000 1001 0 0 0
Ptr 6 Ptr 7 Ptr 8 Ptr 9 Ptr 10 Ptr 11 Ptr 12 Ptr 13 (ind) Ptr14(double)
0 0 0 0 0 0 0 0 0
Inode # Length(bytes) Owner/Grp Permissions Ptr 1 Ptr 2 Ptr 3 Ptr 4 Ptr 5
8 2,048,000 randy/staff  rw------- 2001 2002 2003 2004 2005
Ptr 6 Ptr 7 Ptr 8 Ptr 9 Ptr 10 Ptr 11 Ptr 12 Ptr 13 (ind) Ptr14(double)
2006 2007 2008 2009 2010 2020 2030 2040 2050
Inode # Length(bytes) Owner/Grp Permissions Ptr 1 Ptr 2 Ptr 3 Ptr 4 Ptr 5
9 0 scott/staff  rw------- 0 0 0 0 0
Ptr 6 Ptr 7 Ptr 8 Ptr 9 Ptr 10 Ptr 11 Ptr 12 Ptr 13 (ind) Ptr14(double)
0 0 0 0 0 0 0 0 0
Inode # Length(bytes) Owner/Grp Permissions Ptr 1 Ptr 2 Ptr 3 Ptr 4 Ptr 5
10 500 randy/staff drwx------ 3000 0 0 0 0
Ptr 6 Ptr 7 Ptr 8 Ptr 9 Ptr 10 Ptr 11 Ptr 12 Ptr 13 (ind) Ptr14(double)
0 0 0 0 0 0 0 0 0
Inode # Length(bytes) Owner/Grp Permissions Ptr 1 Ptr 2 Ptr 3 Ptr 4 Ptr 5
11 500 scott/staff drwxr---- 1 0 0 0 0
Ptr 6 Ptr 7 Ptr 8 Ptr 9 Ptr 10 Ptr 11 Ptr 12 Ptr 13 (ind) Ptr14(double)
0 0 0 0 0 0 0 0 0

Data Blocks

 
Block 10
Filename Inode
a 3
b 5
c 4
Block 11
Filename Inode
d 6
g 7
f 7
Block 12
Filename Inode
g 8
h 9
Block 13
Filename Inode
i 10
j 10
k 11
Block 2040
The Pointers
10,000
10,001
.........
........
Block 2050
The Pointers
20,000
20,001
......
......
Block 20,000
The Pointers
30,000
30,001
30,002
........
Assume that every directory entry takes 100 bytes.
Assume every block of pointers can hold 1024 pointers
Assume every block is 4096 bytes long.
Assume the 13th block of the inode is the indirect block, and the 14th block is the doubly-indirect block.

1) What are the contents of '/'? _______________________________________
2) Who can read the contents of  /a/g? _________________________________
3) Where is the data for the 14th block of file /b/g? ________________________
4) What is the maximum file size for this file system. _______________________
5) Where is the data for byte 2000 of file /c/i? ____________________________
6) What is stored in block 3000? ______________________________________
7) If block #10 is destroyed, what files are lost? ___________________________
8) Where is the data for the 1037th block of /b/g? __________________________
9) How many disk accesses does it take to do an 'ls' on '/'? __________________
10) How many disk accesses does it take to access the first byte of /a/g? _______