Filesystems 文件系统索引分配:索引节点

Filesystems 文件系统索引分配:索引节点,filesystems,operating-system,inode,Filesystems,Operating System,Inode,我想知道是否有人可以再次检查我对以下问题的回答。我不确定我是否正确理解了单间接块和双间接块 磁盘块为2KB,使用索引分配。文件的inode长度为128字节,32字节用于状态信息。其余96个字节用于索引项-每个项4个字节 如果使用以下方案,文件中可存储的最大数据量是多少 a。每个索引项都是指向直接块的指针 24 pointers x 2 KB = 48 KB 2 KB / 4 pointers = 512 pointers = 2 MB x 24 = 48 MB 22 pointers x 2

我想知道是否有人可以再次检查我对以下问题的回答。我不确定我是否正确理解了单间接块和双间接块

磁盘块为2KB,使用索引分配。文件的inode长度为128字节,32字节用于状态信息。其余96个字节用于索引项-每个项4个字节

如果使用以下方案,文件中可存储的最大数据量是多少

a。每个索引项都是指向直接块的指针

24 pointers x 2 KB = 48 KB
2 KB / 4 pointers = 512 pointers = 2 MB x 24 = 48 MB
22 pointers x 2 KB = 44 KB + 2 MB + 2 GB
b。每个索引项都是指向单个间接块的指针

24 pointers x 2 KB = 48 KB
2 KB / 4 pointers = 512 pointers = 2 MB x 24 = 48 MB
22 pointers x 2 KB = 44 KB + 2 MB + 2 GB
c。前22个条目是指向直接块的指针,第23个条目是指向单个间接块的指针,第24个条目是指向双间接块的指针

24 pointers x 2 KB = 48 KB
2 KB / 4 pointers = 512 pointers = 2 MB x 24 = 48 MB
22 pointers x 2 KB = 44 KB + 2 MB + 2 GB
家庭作业

a) 正确的 b) 您有24个指向第一级间接块的指针。可以在每个间接块中存储512个指针。每个指针都指向一个数据块A2KB

24 x 512 x 2KB = 24MB
我不明白你的2MB是从哪里来的

(c) 22个指向2KB块的指针:

 22 x 2KB = 44 KB
1个指向512个指向2KB的指针:

1 x 512 x 2KB = 1 MB
1个指向512个指针的指针,每个指针指向一个块,512个指针指向2KB:

1 x 512 x 512 x 2KB = 512 MB
对于实际文件系统的开发,通常使用类似c)的东西。例如,有12个直接、1个间接、1个双重间接和1个三重间接块条目。

a) 正确的 b) 您有24个指向第一级间接块的指针。可以在每个间接块中存储512个指针。每个指针都指向一个数据块A2KB

24 x 512 x 2KB = 24MB
我不明白你的2MB是从哪里来的

(c) 22个指向2KB块的指针:

 22 x 2KB = 44 KB
1个指向512个指向2KB的指针:

1 x 512 x 2KB = 1 MB
1个指向512个指针的指针,每个指针指向一个块,512个指针指向2KB:

1 x 512 x 512 x 2KB = 512 MB
对于实际文件系统的开发,通常使用类似c)的东西。例如,有12个直接、1个间接、1个双重间接和1个三重间接块条目