某文件系统文件存储采用文件索引节点法。假设文件索引节点中有 8 个地址项 iaddr[0]~iaddr[7],每个地址项…
单选题
某文件系统文件存储采用文件索引节点法。假设文件索引节点中有 8 个地址项 iaddr[0]~iaddr[7],每个地址项大小为 4 字节,其中地址项 iaddr[0]~iaddr[4]为直接地址索引,iaddr[5]、iaddr[6]是一级间接地址索引,iaddr[7]是二级间接地址索引,磁盘索引块和磁盘数据块大小均为 1KB,若要访问 iclsClient.dll 文件的逻辑块号分别为 1、518,则系统应分别采用( )。
A. 直接地址索引、直接地址索引
B. 直接地址索引、一级间接地址索引
C. 直接地址索引、二级间接地址索引
D. 一级间接地址索引、二级间接地址索引
答案:C
解析
正确答案:C。逻辑块号 1 属于直接地址索引范围,逻辑块号 518 需用二级间接地址索引。
计算过程:每个索引块 1KB=1024B,每个地址项 4B,因此一个间接索引块可存 1024/4=256 个地址项。
iaddr[0]~iaddr[4] 为直接索引,覆盖逻辑块号 0~4,所以逻辑块号 1 用直接地址索引。
iaddr[5] 一级间接覆盖 5~260;iaddr[6] 一级间接覆盖 261~516。
因此逻辑块号 517 起才进入 iaddr[7] 二级间接索引,覆盖 517~66052。逻辑块号 518 落在该范围,所以用二级间接地址索引。
选项判断:
A:518 超出直接索引范围。
B:518 已超过一级间接最大块号 516。
C:1 用直接、518 用二级间接,正确。
D:1 可直接索引,不需要一级间接。
考点延伸:索引节点法中,多级索引的覆盖范围由“块大小/地址项大小”逐级相乘得到;注意一级间接有多个时,要依次累加其覆盖块号区间。