查看更多
当前 - 选择题 - 文件系统
中等
单选题
2021年5月第36题
#第二版教材
#必须掌握

某文件系统采用索引节点管理,其磁盘索引块和磁盘数据块大小均为4KB,且每个文件索引节点有8个地址项iaddr[0]~iaddr[7],每个地址项大小为4B,其中iaddr[0]~iaddr[4]采用直接地址索引,iaddr[5]和iaddr[6]采用一级间接地址索引,iaddr[7]采用二级间接地址索引。若用户要访问文件fileX中逻辑块号为5和2056的信息,则系统应分别采用(__)物理块。

问题(1)
浓缩知识点

文件系统采用索引节点管理时,常通过多级索引结构适配不同大小文件的寻址需求。直接地址索引利用索引节点的前若干个地址项直接指向数据块,仅能覆盖小范围逻辑块,比如5个直接项对应逻辑块0-4,适合小文件快速访问;一级间接地址索引是索引节点地址项指向索引块,该块内的每个地址项再指向数据块,单索引块可容纳的地址项数由磁盘块大小除以单个地址项大小计算,比如4KB块搭配4B地址项时可存1024个地址项,单个一级间接可覆盖千级逻辑块,多个一级间接能进一步拓展覆盖范围;二级间接地址索引则通过“索引节点→一级索引块→二级索引块→数据块”的层级,可支持百万级及以上逻辑块的寻址,满足超大文件的存储需求。不同逻辑块号会根据数值落入对应索引的覆盖范围,匹配对应的寻址方式,这类多级索引结构既保证了小文件的访问效率,又突破了直接索引的文件容量限制。

正确答案
D

本题考察的是UNIX 风格索引节点的多级索引寻址范围与映射方式
文件系统通过索引节点(inode)进行数据块的寻址,不同级别的地址索引覆盖不同范围的逻辑块号。设每个索引块大小为4KB,每个地址项为4B,则每个索引块可容纳 4KB / 4B = 1024 个地址项。
iaddr0~iadd4为直接索引:共5项,可直接对应逻辑块号0-4。
iaddr5 为一级间接索引:指向一个索引块,该块含1024项,可覆盖逻辑块号5~1028。
iaddr6 为一级间接索引:继续覆盖1029-2052。
iaddr7 为二级间接索引:每项指向一级索引块,一级索引块再指向数据块,最多可索引1024×1024个数据块,覆盖逻辑块号2053及以上。
逻辑块号5:处于5-1028之间,使用 iaddr[5],属于一级间接索引。
逻辑块号2056:大于2052,属于二级间接索引的范围。

A选项直接+直接:逻辑块5超出直接范围(仅到4),错误。
B选项直接+一级间接:逻辑块2056超出一级间接范围(最大到2052),错误。
C选项一级间接+一级间接:逻辑块2056不在一级间接范围,错误。
D选项一级间接+二级间接:逻辑块5在 iaddr5范围,逻辑块2056在 iaddr7 范围,正确。
因此选择 D。

联系我们
隐私协议
用户协议
微信公众号
知乎
小红书
浙ICP备2021029036号
@2022-2026
嘉兴市安芯网络科技有限公司 版权所有