25:
90:
184:
The inode pointer structure not only allows for files to easily be allocated to non-contiguous blocks, it also allows the data at a particular location inside a file to be easily located. This is possible because the logical block size is fixed. For example, if each block is 8 kB, file data at 112 kB
193:
Unlike inodes, which are fixed in number and allocated in a special part of the file system, the indirect blocks may be of any number and are allocated in the same part of the file system as data blocks. The number of pointers in the indirect blocks is dependent on the block size and size of block
171:
The structure is partially illustrated in the diagram accompanying this article. The structure allows for inodes to describe very large files in file systems with a fixed logical block size. Central to the mechanism is that blocks of addresses (also called
176:) are only allocated as needed. For example, a 12-block file would be described using just the inode because its blocks fit into the number of direct pointers available. However, a 13-block file needs an indirect block to contain the thirteenth address.
125:
In the past, the structure may have consisted of about twelve pointers, but most modern file systems use fifteen pointers. These pointers consist of (assuming 15 pointers in the inode):
54:
185:
to 120 kB would be pointed to by the third pointer of the first indirect block (assuming twelve direct pointers in the inode pointer structure).
265:
194:
pointers. Example: with a 512-byte block size, and 4-byte block pointers, each indirect block can consist of 128 (512 / 4) pointers.
76:
247:
37:
47:
41:
33:
158:
The levels of indirection indicate the number of pointer that must be followed before reaching actual file data.
58:
210:
227:
110:
235:
106:
259:
239:
211:
https://inst.eecs.berkeley.edu/~cs162/sp20/static/sections/section9-sol.pdf
231:
89:
220:
102:
88:
113:. It is also adopted by many related file systems, including the
114:
18:
16:
Hierarchy/layout for directing inodes in a Unix File System
154:(pointing to a block of doubly indirect pointers)
147:(pointing to a block of single indirect pointers)
133:that directly point to blocks of the file's data
46:but its sources remain unclear because it lacks
8:
77:Learn how and when to remove this message
140:(pointing to a block of direct pointers)
109:(UFS) to list the addresses of a file's
238:; Robert S. Fabry (February 18, 1984).
203:
117:file system, popular with Linux users.
7:
14:
23:
248:Computer Systems Research Group
101:is a structure adopted by the
1:
240:"A Fast File System for UNIX"
266:Unix file system technology
221:Ext3 for large file systems
282:
223:, LWN.net, June 12, 2006.
167:Fixed logical block size
32:This article includes a
152:triply indirect pointer
145:doubly indirect pointer
138:singly indirect pointer
99:inode pointer structure
61:more precise citations.
228:Marshall Kirk McKusick
94:
180:Ease of data location
92:
93:Example of structure
95:
34:list of references
105:of a file in the
87:
86:
79:
273:
252:
244:
236:Samuel J Leffler
213:
208:
107:Unix File System
82:
75:
71:
68:
62:
57:this article by
48:inline citations
27:
26:
19:
281:
280:
276:
275:
274:
272:
271:
270:
256:
255:
242:
226:
217:
216:
209:
205:
200:
191:
189:Indirect blocks
182:
174:indirect blocks
169:
164:
131:direct pointers
123:
83:
72:
66:
63:
52:
38:related reading
28:
24:
17:
12:
11:
5:
279:
277:
269:
268:
258:
257:
254:
253:
232:William N. Joy
224:
215:
214:
202:
201:
199:
196:
190:
187:
181:
178:
168:
165:
163:
160:
156:
155:
148:
141:
134:
122:
119:
85:
84:
42:external links
31:
29:
22:
15:
13:
10:
9:
6:
4:
3:
2:
278:
267:
264:
263:
261:
250:
249:
241:
237:
233:
229:
225:
222:
219:
218:
212:
207:
204:
197:
195:
188:
186:
179:
177:
175:
166:
161:
159:
153:
149:
146:
142:
139:
135:
132:
128:
127:
126:
120:
118:
116:
112:
108:
104:
100:
91:
81:
78:
70:
67:February 2012
60:
56:
50:
49:
43:
39:
35:
30:
21:
20:
246:
206:
192:
183:
173:
170:
162:Key features
157:
151:
144:
137:
130:
124:
98:
96:
73:
64:
53:Please help
45:
111:data blocks
59:introducing
198:References
121:Structure
260:Category
55:improve
243:(PDF)
103:inode
40:, or
115:ext3
97:The
129:12
262::
245:.
234:;
230:;
150:1
143:1
136:1
44:,
36:,
251:.
80:)
74:(
69:)
65:(
51:.
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.