Skip to content

2013年 408 操作系统 第 26 题

操作系统2013年选择题2分

题目

若某文件系统索引结点 (inode) 中有直接地址项和间接地址项,则下列选项中,与单个文件长度无关的因素是( )。

错因

B

间接地址级数(一级 / 二级 / 三级间接)直接决定单个文件能寻址多少块——一级间接再多一层就能多寻址 256 倍的块(按指针指针数算)。把它当成与文件长度无关的因素,相当于忽略了 inode 索引结构的扩容机制。

C

地址项个数(10 个直接 + 1 个一级间接 + 1 个二级间接 …)直接决定单文件最大块数:直接项越多、能直接寻址的小文件块越多;间接项越多,能寻址的大文件越大。这是单文件长度的直接限制因素

D

文件块大小(如 1KB / 4KB)也直接影响单文件最大长度——同样数量的地址项,每项指向的块越大,文件总长越大。一级间接的覆盖范围 = 间接块字节数 / 指针字节数 × 块大小,块大小翻倍,覆盖范围翻倍以上。把它当无关因素是没把"块数 × 块大小 = 长度"想透。

总解析

单文件最大长度计算公式

逐个看每个因素的影响:

因素是否影响单文件长度?怎么影响
A inode 总数✗ 不影响inode 总数限制的是整个文件系统能装多少个文件,跟"某一个文件能多大"完全没关系。一个文件用一个 inode,文件长度由这个 inode 内部的索引结构决定
B 间接索引级数✓ 影响多一级 → 多一层指针指向的能力 → 寻址范围扩大
C 地址项个数✓ 影响inode 里有几条直接 / 间接项,决定能寻址多少块
D 文件块大小✓ 影响同样块数下,块越大文件越长;间接块容纳的指针数也跟块大小成正比

区分钥匙:A 是"全系统的容量"维度,B C D 是"单个文件的索引能力"维度。题问"单个文件长度",A 在另一个维度上——文件系统里 100 个 inode 还是 100 万个 inode,都不影响"某一个文件能写多大"。

最终答案是 A

最后更新:

🎬 可视化演示
加载中...

提示:可在可视化区直接操作播放、步进、修改参数