Relax1000 操作系统 · 第4章 文件管理 · 题目¶
第4章 文件管理¶
本章 81 题;题目册印刷页 167–181。
Q1¶
下列关于文件的基本概念和属性的叙述中,错误的是( )。
- A.文件的逻辑结构是指从用户角度看到的文件组织形式,如流式文件或记录式文件,它独立于文件的物理存储结构
- B.文件名是用户赋予文件的符号标识,而文件扩展名(如.txt, .exe)通常用于指示文件类型,方便用户和操作系统识别
- C.文件的“只读”属性可以防止用户对文件进行修改,但具有管理员权限的用户仍可能通过调整权限或强制写入的方式修改文件
- D.文件控制块(FCB)或索引节点(inode)是操作系统为管理文件而设置的数据结构,包含了文件名、物理位置、大小、存取权限等元数据
Q2¶
文件控制块(FCB)中主要包含( )。
I. 文件基本信息
II. 文件存取控制信息
III. 文件使用信息
IV. 文件内容
- A.I、II
- B.I、II、III
- C.II、III、IV
- D.全部
Q3¶
下列关于文件控制块的说法中,正确的是( )。
- A.文件控制块是在执行 open(文件打开)系统调用时建立的
- B.文件控制块就是文件目录项
- C.一个文件可以对应有多个文件控制块
- D.文件控制块包含打开文件表指针
Q4¶
下列关于引入索引节点后,文件目录和索引节点的叙述中,正确的是( )。
- A.文件目录是索引节点的有序集合
- B.文件目录和索引节点无联系
- B.文件目录中分为文件名和索引节点
- D.索引节点中有文件的控制信息
审计旁注(非原文):改排版
重复的第二个 B 应改为 C。
Q5¶
下列关于索引节点的叙述中,错误的是( )。
- A.每个文件都对应一个唯一的索引节点,其中包含了文件的所有者、访问权限、时间戳以及指向文件数据块的指针等信息
- B.引入索引节点后,文件目录项中通常只包含文件名和该文件对应的索引节点号,而不包含文件的其他元数据
- C.当一个文件被多个硬链接指向时,系统会为每个硬链接创建一个独立的索引节点,但这些索引节点会指向相同的物理数据块
- D.索引节点存储在磁盘上,当文件被访问时,其对应的索引节点会被加载到内存中以便快速存取
Q6¶
下列关于 inode 的描述,错误的是( )。
I. inode 的数量可随时动态调整
II. 每个文件都有一个唯一对应的 inode 编号
III. 所有文件系统都共享同一个 inode 表
IV. 删除一个文件时,如果该文件的链接计数减至 0,系统会释放相应的 inode
- A.I、II
- B.I、III
- C.II、IV
- D.I、II、III
Q7¶
下列文件信息中并未包含在文件对应的磁盘索引节点中的是( )。
- A.文件的链接计数
- B.文件在磁盘中的物理位置
- C.文件的读写指针
- D.文件的访问权限
审计旁注(非原文):新增校验
速对答案写 B,详细解析写 C;按题意读写指针不在磁盘索引节点中,应为 C。
Q8¶
已知某文件系统采用索引分配的方式,文件索引节点中有 8 个直接索引、2 个 1 级间接索引和 1个 2 级间接索引,已知磁盘块的大小是 1KB,一个索引指针的大小为 4B,若某个文件的索引节点已经调入内存,其他相关数据未调入内存,则修改该文件的第 518KB 处的数据需要( )次磁盘 I/O。
- A.1 次
- B.2 次
- C.3 次
- D.4 次
Q9¶
某树形目录结构文件系统,采用混合索引的方式管理外存空间。该文件系统的每个目录项占128B,其中 8B 存放索引节点号,120B 存放文件名。索引节点中含有 13 个地址项,其中直接地址项为10 个,一级、二级、三级地址项各 1 个,磁盘块大小为 4KB,一个磁盘块中可放置 1024 个地址。则该文件系统能创建的文件数量上限为( )。
- A.2^64
- B.2^120
- C.10+1K+1M+1G
- D.1024x(10+1K+1M+1G)
Q10¶
设某文件系统中每个盘块占 1KB,索引节点编号占 4B,文件名也占 4B。则对一个具有 640 个文件的目录而言,为了找到某个文件的物理地址信息平均需要启动( )次磁盘。
- A.3
- B.4
- C.5
- D.6
Q11¶
某文件系统的一个磁盘块大小为512B,FCB的大小为64B,其中文件名占12B。此文件系统的第一版中,目录项包含 FCB 的全部内容。为加速目录访问,此文件系统的第二版引入了索引节点,索引节点编号长度为 4B。现有一个存放在磁盘上,包含有 256 个文件的目录,则两版文件系统在此目录中检索一个文件平均各需访问磁盘( )次。
- A.32,9
- B.32,8
- C.16.5,5.5
- D.16.5,4.5
Q12¶
在采用 UNIX 索引节点(inode)结构的文件系统中,若多个独立进程同时打开并读写同一个共享文件,则下列叙述中,正确的是( )。
- A.系统内存中只会存在一份该文件的内存 inode,且该 inode 中记录了文件当前的读写指针
- B.各个进程打开文件表项分别指向系统打开文件表中的不同表项,从而各自维护独立的读写指针
- C.磁盘 inode 和内存 inode 包含的信息完全相同,只是所处的存储介质不同
- D.当其中一个进程对文件执行写操作导致文件增大时,该文件对应的磁盘 inode 中的文件大小属性会立即同步更新到磁盘上
审计旁注(非原文):口径冲突
真实 Unix 与王道两级打开文件表模型不同,备考默认按王道。
Q13¶
当用户请求操作系统删除一个当前未被任何进程打开的文件时,操作系统会执行一系列操作来完成此任务。下列操作中,哪一项是操作系统在执行文件删除过程中不会执行的是( )。
- A.释放该文件内容所占用的全部磁盘块。
- B.清除该文件在其父目录中的目录项。
- C.回收该文件对应的文件控制块(FCB)或索引节点(inode)所占用的空间。
- D.格式化该文件曾经占用的磁盘扇区以清除数据。
Q14¶
用户进程通过 read(fd, buf, len)读取文件数据。若该文件的数据块不在内存的页缓存中,操作系统内核在处理该系统调用时,涉及以下步骤:① 将进程状态设为阻塞,并调用磁盘驱动程序发起 I/O ② 检查文件描述符 fd 的合法性及读写权限③ 磁盘完成 I/O,触发中断,进程被唤醒并重新获得 CPU ④ 将数据从内核空间的缓冲区拷贝到用户空间的 buf中⑤ 陷入内核态,保存用户态上下文正确的执行顺序是( )。
- A.⑤ -> ② -> ① -> ③ -> ④
- B.⑤ -> ① -> ② -> ③ -> ④
- C.② -> ⑤ -> ① -> ④ -> ③
- D.⑤ -> ② -> ④ -> ① -> ③
Q15¶
下列关于 delete()系统调用的说法中,错误的是( )。
- A.根据指定路径找到 inode后,查看其存取控制信息看删除操作是否允许,若非法则删除失败
- B.若允许删除文件,查看 inode 里的访问计数,若大于 1,则该计数值-1;若等于 1,则释放该文件所占用磁盘块后释放该 inode 所占空间
- C.若采用位示图管理空闲空间,则释放该文件所占用磁盘块只需要将对应的 bit 值设为 0 即可
- D.删除该文件所在目录中对应的目录项
Q16¶
一个用户进程通过 read 系统调用读取一个磁盘文件,在不考虑异常的情况下,下列操作中,操作系统内核必定会执行的是( )。
I. 检查文件描述符(fd)的有效性及读写权限
II. 在文件目录中按名搜索该文件对应的目录项
III. 将读取到的数据先放入内核缓冲区,再拷贝到用户态空间
- A.I
- B.I、III
- C.II、III
- D.全部
Q17¶
下列关于文件打开 open 系统调用的叙述中,错误的是( )。
- A.根据文件路径检索目录找到目录项后,得到 inode 编号,然后根据超级块中记录的 inode 起始块号,磁盘块大小,inode 大小信息结合 inode 编号找到 inode 所在磁盘块,将 inode 读入内存
- B.inode 读入内存后,需要根据 inode 里记录的存取权限和打开文件提供的参数即访问权限,判断此次打开操作是否允许
- C.如果该文件是首次被打开,需要在系统级打开文件表和用户级打开文件表中都增加一个表项
- D.系统级打开文件表中的访问计数和 inode 里的链接计数值可以不同
Q18¶
一个用户进程通过 read 系统调用读取一个磁盘文件中的数据,下列叙述中正确的有( )个。
I. read()系统调用需要的参数有文件名,读写指针和期待读取的字节数
II. 若该文件的数据不在内存,进程在执行 read()系统调用后,会主动阻塞自己,等待 I/O 完成后,在对应的中断服务程序中被唤醒
III. read()系统调用的主要工作就是将文件从磁盘直接读入用户空间中的指定缓冲区
IV. read()系统调用只会从磁盘读入指定区域的数据,不会读入无关数据V. 若根据读写指针找到文件的读位置后发现从读位置到文件结束的位置所在区域的字节数小于期待读取的字节数,则读取失败,返回-1
- A.1
- B.2
- C.3
- D.4
审计旁注(非原文):改解析
HDD 是磁介质,不是 Flash;U 盘/SSD 通常才基于闪存。
Q19¶
进程调用 open() 打开文件时,操作系统需要维护多个内核数据结构。下列关于这些数据结构及其包含信息的描述中,完全正确的是( )。
- A.用户级打开文件表:记录文件描述符、文件读写指针及打开模式(如只读、读写)
- B.系统级打开文件表:记录打开模式、当前读写偏移量及指向内存索引节点的指针
- C.内存索引节点表:记录文件名、文件属主、文件大小及磁盘物理块地址
- D.目录项:记录文件名、文件访问权限(rwx)及指向系统级打开文件表的指针
审计旁注(非原文):按王道改答案
王道口径应选 A;原 B 使用 Unix 打开文件描述模型。
Q20¶
若文件 f1 的存取权限为可读写,创建其硬链接为 f2,两个进程分别打开 f1 和 f2,获得对应的文件描述符为 fd1 和 fd2,则下列叙述中,正确的是( )。
I. f1 和 f2 的访问权限保持相同
II. f1 和 f2 共享同一个内存索引结点
III. fd1 和 fd2 的值可能相同
IV. 当 inode 读入内存后,将硬链接的计数值复制到系统级打开文件表中作为该文件的访问计数值
- A.II、III
- B.Ⅰ、Ⅱ、Ⅲ
- C.Ⅱ、Ⅲ、Ⅳ
- D.Ⅰ、Ⅱ、Ⅲ、Ⅳ
Q21¶
文件已被打开后,对文件的访问采用( )。
- A.文件符号名
- B.从根目录开始的路径名
- C.从当前目录开始的路径名
- D.文件描述符
Q22¶
在文件系统中,当一个进程完成了对某个文件的所有操作后,会执行“关闭文件”操作以释放相关资源。假设文件 F 当前仅被进程 P 打开和访问,当进程 P 调用 close( )系统调用关闭文件 F 时,操作系统不会执行的操作是( )。
- A.将进程 P 的用户打开文件表(或文件描述符表)中与文件 F 关联的表项移除或标记为无效
- B.若文件 F 的内存索引节点(inode)的访问计数因此变为 0,则将其从内存中移除
- C.将文件 F 在磁盘上的数据块内容清零
- D.若文件内容在内存缓冲区中被修改过但尚未写回磁盘,则执行“写回(flush)”操作。
审计旁注(非原文):有歧义
close 不等于可靠落盘;是否立即 flush 取决于策略。
Q23¶
关于文件打开操作(open())及其涉及的内核数据结构,下列描述最准确的是( )。
- A.进程调用 open() 成功打开一个已存在的文件时,系统必然会在内存索引节点(inode)表中新增一个对应的表项
- B.两个不同的进程分别调用 open() 打开同一个文件时,它们在系统级打开文件表中共享同一个表项,从而共享读写偏移量
- C.进程打开某文件后调用 fork() 创建子进程,子进程通过继承的文件描述符对该文件进行读写时,其读写偏移量由父、子进程共享的系统级打开文件表项维护
- D.当进程通过硬链接文件路径调用 open() 打开目标文件时,由于路径不同,系统必然会为其分配一个新的内存索引节点(inode)
审计旁注(非原文):口径冲突
原 C 使用 Unix 的 fork 共享打开文件描述语义,不能反推王道。
Q24¶
以下关于文件控制块(FCB)的描述中,正确的是( )。
I. 文件控制块是操作系统创建的、用来控制和管理一个文件属性信息的数据结构
II. 文件控制块是一个文件存在的唯一证明
III. 文件控制块存储了文件访问控制信息
IV. 文件被首次打开时,仅文件控制块的信息会被读入内存
- A.I、II、III
- B.Ⅰ、Ⅱ、Ⅳ
- C.Ⅰ、Ⅲ、Ⅳ
- D.全部
Q25¶
若多个进程共享同一个文件 F,则下列叙述错误的是( )。
- A.各进程可以用“读”或“写”方式打开文件 F
- B.在系统打开文件表中有多个表项包含 F 的属性,每个表项对应一个打开文件的进程
- C.各进程的用户打开文件表中关于 F 的表项内容可能不同
- D.进程关闭 F 时,系统删除相应的用户打开文件表项,若此时无其他进程打开 F,则系统删除 F在系统打开文件表中的表项
审计旁注(非原文):内部冲突
本题采用同一文件共享系统表项的王道模型,与本章其他题前后不一。
Q26¶
若多个进程共享同一个文件 F,进程 P1 使用 close()系统调用关闭文件 F,则下列叙述中,正确的是( )。
- A.根据文件描述符 fd 找到系统打开文件表中对应表项并删除
- B.根据文件描述符 fd 找到进程 P1 的进程打开文件表中对应表项并删除
- C.释放内存中该文件的 inode
- D.把超级块的当前信息从内存写回磁盘
Q27¶
以下关于文件权限的说法中,正确的是( )
I. 进程打开文件后,需要将对应 inode 里的文件模式(权限位)信息复制到进程打开文件表里的对应表项里面
II. 若文件 inode 里的文件模式(权限位)表明当前文件的权限为可读可写,那么进程在打开文件后便能对其进行读写操作
III. 进程打开文件中的访问权限位记录了进程打开文件时提供的 flag 参数(访问权限)
- A.I
- B.Ⅲ
- C.Ⅱ、Ⅲ
- D.Ⅰ、Ⅱ、Ⅲ
Q28¶
操作系统为了保护文件免遭非法访问和破坏,通常会提供文件保护机制。下列关于文件保护的常用策略和实现的叙述中,错误的是( )
- A.访问控制列表(ACL)允许为每个文件指定每个用户及其对该文件的访问权限(如读、写、执行),提供了细粒度的保护
- B.在基于口令保护的机制中,用户在访问文件前需要输入正确的口令,但口令的安全性依赖于其复杂度和保密程度
- C.口令和密码能够防止用户文件被他人存取或窃取,同时还能控制用户对文件的访问类型
- D.用户、组、其他(UGO)权限模型 将用户分为文件所有者、同组用户和其他用户三类,并为每类用户分别授予读、写、执行权限
Q29¶
在操作系统中,文件通常有逻辑结构和物理结构两种表示方式。以下哪些描述是逻辑结构和物理结构的区别?( )。
- A.逻辑结构指文件的组织方式,物理结构指文件的读写方式和操作方式
- B.逻辑结构指文件的组织方式,物理结构指文件在磁盘上的存储方式
- C.逻辑结构指文件的组织方式与存储方式,物理结构指文件的存储方式
- D.逻辑结构指文件的读写方式和操作方式,物理结构指文件在内存中的存储方式
Q30¶
文件的逻辑结构是指从用户视角观察到的文件组织形式,它决定了用户如何组织和访问文件中的数据。下列关于不同文件逻辑结构的叙述中,错误的是( )。
- A.流式文件将文件视为无结构的字节序列,访问时通过读写指针顺序进行,是大多数操作系统中普通文件的默认组织方式
- B.索引文件通过为文件中的每个记录建立一个索引项来加快按关键字查找的速度,但增加了索引表的存储开销
- C.索引顺序文件结合了顺序文件和索引文件的特点,通过为记录组建立索引,既支持高效的顺序存取,也支持高效的随机存取
- D.直接文件通过直接在 FCB 中记录文件的物理地址,实现了对文件的快速查找
Q31¶
文件的顺序存取是( )。
- A.按终端号依次存取
- B.按文件的逻辑号逐一存取
- C.按物理块号依次存取
- D.按文件逻辑记录大小逐一存取
Q32¶
对于需要极高随机访问速度、且会被经常性修改的大型文件(如大型数据库或视频点播文件),最适合的文件数据块组织方式是( )。
- A.连续结构
- B.链式结构
- C.直接索引结构
- D.多级索引结构
Q33¶
文件物理结构是指文件在物理存储器中实际的存在状态。关于文件的物理结构,下列说法正确的是( )。
I. 连续分配方式既支持文件长度可变,也支持随机访问
II. 索引分配方式既支持文件长度可变,也支持随机访问
III. 隐式链接方式为文件分配磁盘块,如果文件占用的盘块损坏,后续的盘块都将丢失
IV. 混合索引方式为文件分配磁盘空间,读取文件不同记录需要的磁盘 I/O 次数相同
- A.I、II、IV
- B.Ⅱ、Ⅲ
- C.Ⅱ、Ⅲ、Ⅳ
- D.Ⅰ、Ⅲ、Ⅳ
Q34¶
下列关于文件的叙述中,正确的有( )。
I. 记录是文件内独立的最小信息单位,一个文件中记录的长度可以不等
II. 文件的控制信息通常与文件内容一起存储在同一磁盘块中
III. 文件的物理结构有顺序式、链接式以及索引式,文件分配表采用的是单级索引式
IV. 多级索引相对于单级索引,可以有效支持大文件,但是查找效率下降
- A.I、IV
- B.I、III
- C.II、IV
- D.I、III、IV
Q35¶
下列文件的物理结构中,可能带来外部碎片问题的是( )。
- A.隐式链接
- B.顺序结构
- C.索引结构
- D.显式链接
Q36¶
关于文件物理结构与操作系统的空间分配策略,下列说法错误的是( )。
- A.连续分配通常要求在文件创建时预知或预分配其最终大小,否则可能因后续空间不足而需要移动整个文件
- B.索引分配支持文件的动态增长,但即使文件当前大小为 0(空文件),系统也必须立即为其分配一个完整的索引块
- C.隐式链接分配在文件动态增长时,只需在链表尾部追加新块,不会产生外部碎片,但中间块的损坏会导致后续数据全部丢失
- D.显式链接分配(如 FAT)不仅提高了检索速度,还解决了隐式链接中因指针占用数据块内部空间而导致的逻辑块大小与物理块大小不一致的问题
Q37¶
64GB 的硬盘,块的大小为 4KB,FAT最少占多少硬盘空间( )。
- A.12MB
- B.24MB
- C.48MB
- D.96MB
Q38¶
与连续分配和链接分配相比,索引分配解决了产生外部碎片和难以随机访问的问题,但它带来的主要缺点是( )。
- A.文件的长度被严格限制,无法动态扩展
- B.必须将整个文件的数据全部读入内存后才能进行处理
- C.需要为每个文件建立索引表,增加了额外的存储空间开销
- D.删除文件时,需要遍历整个磁盘以回收数据块
Q39¶
某文件系统采用索引分配方法存储文件,磁盘块的大小为 4KB,盘块号为 32 位,每个索引节点(inode)存储有 10 个地址索引,则该文件系统采用一级索引分配方法和二级索引分配方法时,最大的文件长度分别为( )。
- A.40KB,40MB
- B.40MB,40GB
- C.40KB,160MB
- D.40MB,160GB
Q40¶
某文件系统的 inode中含有直接索引指针 12 个,一级、二级和三级索引指针各一个,磁盘块大小为 4KB,每个索引指针占 4B。若某文件的 inode 已在内存中,则读取该文件第 9876 字节和第 543210字节时,各需读取磁盘( )次。
- A.0,1
- B.1,2
- C.1,3
- D.2,3
Q41¶
某文件系统使用 FAT 方式组织文件。若块大小为 4KB,FAT表项长度为 32 位,其中用 1 位表示已占用,1 位表示损坏,其余用于表示块号,则分区的最大长度为( ),4GB 大小分区的 FAT表长度为( )。
- A.8TB,4KB
- B.4TB,4KB
- C.8TB,4MB
- D.4TB,4MB
Q42¶
下列关于显式链接方式中文件分配表 FAT的说法错误的是( )。
- A.显式链接可以支持随机访问,加快了访问速度
- B.FAT还可用于外存空闲空间管理
- C.当进程打开文件时,操作系统才会将处于磁盘的 FAT读入内存,以减少 FAT对内存的占用
- D.在内存中,可以用一个数组来表示 FAT
Q43¶
在 UNIX 系统中,一个盘块的大小为 1KB,每个盘块号占 4B,采用混合索引的文件分配方式。在 FCB 中,第 0~9 个地址为直接地址,第 10 个地址为一次间接地址,第 11 个地址为二次间接地址,第 12 个地址为三次间接地址,一个文件的字节偏移量为 420000,则在关于其物理地址的转化过程的描述中,正确的是( )。
- A.通过二次间接索引在第 11个地址中得到一次间址,由此得到二次间址,再找到物理块号,其块内偏移量为 160
- B.通过二次间接索引在第 11个地址中得到一次间址,由此得到二次间址,再找到物理块号,其块内偏移量为 44
- C.通过一次间接索引在第 10 个地址中得到物理块号,其块内偏移量为 160
- D.通过一次间接索引在第 10 个地址中得到物理块号,其块内偏移量为 44
Q44¶
设有一个记录式文件,采用链接分配方式,逻辑记录的固定长度为 100B,在磁盘上存储时采用成组分解技术。盘块长度为 512B。如果该文件的目录项已经读入内存,用户现在需要修改第 22 个逻辑记录中的文件内容,该操作共需启动硬盘的次数为( )。
- A.1
- B.2
- C.5
- D.6
Q45¶
某文件系统原采用 FCB集中存储方式,每个 FCB长度为 128B,磁盘块大小为 1KB。为优化目录检索速度,系统采用 FCB 分解法,将目录项改为仅包含“文件名(12B)+ inode 号(4B)”。对于一个包含 10000 个文件的目录,采用线性检索法查找最后一个文件时,FCB 分解法在最坏情况下使读取目录文件的磁盘 I/O 次数减少了多少次?(不考虑缓存,目录项不跨块)( )。
- A.1093
- B.1094
- C.1250
- D.157
Q46¶
在某个文件系统中,文件的索引节点(inode)中包含 16 个块地址项。每个地址项既可以直接指向一个存放文件数据的磁盘块,也可以作为一个一级间接地址指向一个索引块,每个索引块可以存放512 个磁盘块的地址。若磁盘块大小为 1024B,则该文件系统支持的最大单个文件大小是( )。
- A.8KB
- B.16KB
- C.512KB
- D.8MB
Q47¶
在现代操作系统的文件系统中,通常允许用户为每个进程设置一个“当前工作目录”(Current Working Directory)。当用户或进程引用一个不以根目录符号(如/或\)开头的文件路径时,系统会默认该路径是相对于当前工作目录的。这种机制的主要目的是:
- A.减少操作系统内核管理文件目录所需的内存开销
- B.提高文件系统进行磁盘空间分配的效率
- C.方便用户操作,并简化文件路径的输入,从而间接提高文件定位速度
- D.增强文件的保密性,限制用户只能访问当前工作目录下的文件
Q48¶
以下关于操作系统文件管理中目录的操作,不正确的是( )。
- A.目录是操作系统中用于组织和管理文件的一种特殊文件类型
- B.在目录中可以创建子目录,并在其中存储其他文件或目录
- C.在引入索引节点的文件系统中,目录就是索引节点的有序集合
- D.目录中的文件可以通过文件名或路径名来唯一标识
Q49¶
某文件系统目录结构为树形,每个目录和文件对应的数据分别占用一个磁盘块,不采用 FCB分解法(即目录项就在目录的数据块中,不使用 iNode 方式)。假设根目录(/)所在的磁盘块常驻内存。当前工作目录为 /dirA/dirB/,且其所在的磁盘块也恰好被缓存在内存中。用户欲打开文件/dirA/dirB/dirC/file.txt。若系统分别处理该文件的绝对路径和相对路径(即 dirC/file.txt),在没有任何其他目录缓存的最坏情况下,找到该文件对应目录项(FCB)至少需要访问磁盘的次数分别是( )。
- A.3,1
- B.3,2
- C.4,1
- D.4,2
Q50¶
树形目录结构是现代操作系统中广泛采用的文件组织方式,它通过层次化的方式管理文件和目录。下列关于树形目录结构的叙述中,错误的是( )。
- A.在树形目录中,除根目录外,每个目录或文件都只有一个父目录,从而确保了从根到任何节点的路径唯一性
- B.用户在访问文件时,可以使用从根目录开始的绝对路径名,也可以使用从当前工作目录开始的相对路径名
- C.树形目录结构不允许不同用户或不同目录下存在同名文件,以保证文件名的全局唯一性
- D.为了方便文件共享,树形目录结构可以通过引入链接(如硬链接或符号链接)机制,使得一个文件或子目录可以拥有多个逻辑上的父目录或入口点
Q51¶
操作系统中的文件目录用于组织和管理文件。用户或系统进程可以通过一系列目录操作来维护文件系统的结构。下列关于目录操作的叙述中,错误的是( )。
- A.创建目录操作会在指定的父目录下增加一个新的目录项,并为新目录分配必要的存储空间以存放其自身的目录信息
- B.删除目录操作时,若该目录为空(不包含任何文件或子目录),则可以直接移除其在父目录中的目录项并回收其占用的空间
- C.更改当前目录(或工作目录) 操作会改变进程解析相对路径时的参照点,但不会改变文件系统中任何文件的物理位置或目录结构
- D.列出目录内容操作会读取目录文件的内容并将其显示给用户,此操作通常需要用户具有对该目录文件的写权限
Q52¶
下面的叙述中,正确的是( )。
- A.打开文件的基本操作是把文件信息从辅存读到内存
- B.对一个文件的访问,常由用户访问权限和用户优先级共同限制
- C.文件系统采用树形目录结构后,对于不同用户的文件,其文件名可以相同
- D.为了防止系统故障对文件的破坏,常采用存取控制矩阵方法保护文件
原页版面片段(用于核对图表、矩阵或代码)

Q53¶
以下类型的链接中,允许一个文件在文件系统中有多个有效路径名的是( )。
- A.硬链接
- B.软链接
- C.动态链接
- D.静态链接
Q54¶
设文件 F 的大小为 4KB,用户为 F 创建了一个硬链接文件 H 和一个符号链接(软链接)文件S。随后,用户通过文件 H 的描述符向其尾部追加了 2KB 的数据。下列关于这三个文件状态的叙述中,正确的是( )。
- A.此时读取 S,只能读取到前 4KB 的数据
- B.若立刻删除 F,则 H 的文件大小变为 0
- C.若立刻删除 F,读取 S 会报错,但读取 H 仍能得到 6KB 的数据
- D.F、H、S 三个文件的目录项均指向硬盘上的同一个数据块物理地址
Q55¶
若文件 f1 的软链接(符号链接)为 f2,两个进程分别打开 f1 和 f2,获得对应的文件描述符为fd1 和 fd2。假设打开操作都成功,则下列叙述中,正确的是( )。
I. f1 和 f2 在磁盘上共享同一索引节点(inode)和数据块
II. 操作系统内核会为 fd1 和 fd2 在系统打开文件表中创建独立的表项,但这两个表项最终会指向同一个内存中的文件对象
III. 两个进程通过 fd1 和 fd2 对文件进行的读写操作,其文件读写指针是各自独立的
IV. 若删除文件 f1,则通过 f2 仍然可以访问原文件的内容
- A.I、II
- B.II、III
- C.III
- D.III、IV
审计旁注(非原文):按王道改答案
按王道 II 错、III 对,应选 C;原答案 B 使用 Unix 模型。
Q56¶
用户 A创建文件 F1,用户 B在自己目录下创建 F1的硬链接 F2,并建立 F1的软链接 F3。用户C 创建 F3 的硬链接 F4,再创建 F3 的软链接 F5。现删除文件 F1,下列说法正确的是( )。
I. F2 的计数为 1
II. F3 的计数为 2
III. F4 的计数为 1
IV. F5 的计数为 1 V. 文件的现在所有者是用户 B
VI. F3 可以正常打开文件VII. F2 不能跨文件系统使用,F3 可以跨文件系统使用
- A.I、II、III、VII
- B.I、III、IV、V
- C.I、V、VI
- D.I、II、IV、VII
Q57¶
已知某时刻,文件 f1 的链接计数为 1,建立文件 f1 的硬链接 f2,再建立 f2 的软链接 f3,有两个进程 P1和 P2分别打开了文件 f1和 f2,并分别返回文件描述符 fd1和fd2,下面说法正确的是( )。
- A.f1 和 f2 的打开操作对应同一文件索引节点,且该节点只需要读入内存一次
- B.fd1 和 fd2 指向的表项具有相同的文件访问权限
- C.删除 f3,则 f2 的链接计数减 1
- D.P1 读取 f1 时需要提供文件 f1 的文件名作为系统调用参数
审计旁注(非原文):内部冲突
解析又称同一文件共享系统表项,与本章若干题采用的模型冲突。
Q58¶
关于软链接文件的说法中错误的是( )。
- A.软链接文件本身是一个独立的文件,拥有自己独立的 inode
- B.通过软链接访问目标文件内容时,其磁盘 I/O 访问次数与通过硬链接访问可能相同
- C.软链接文件的 inode 包含一个指针,该指针直接指向目标文件 inode 的物理磁盘地址
- D.软链接可以跨越不同的文件系统分区,因为其存储的路径字符串在解析时是由当前挂载的目录树进行全局解析的
Q59¶
现代操作系统通常采用分层的文件系统结构来管理磁盘上的数据。在典型的磁盘文件系统中,关于其物理布局和关键数据结构的组织,下列叙述中错误的是( )。
- A.引导块通常位于磁盘分区的起始位置,包含了用于启动操作系统的引导程序
- B.超级块包含了整个文件系统的全局信息,如文件系统类型、块大小、inode 总数和空闲块信息等,每个文件系统只有一个超级块
- C.索引节点区存放了文件系统中所有文件的索引节点,每个索引节点包含了文件的元数据和指向数据块的指针
- D.数据区用于存放文件实际的数据内容,通常会采用某种空闲空间管理方法(如位示图或空闲链表)来跟踪未被使用的磁盘块
Q60¶
下列关于文件系统的说法,正确的是( )。
- A.文件系统可使用的容量大小一定等于其所在的磁盘空间大小
- B.文件系统中单个文件的大小只受其所在磁盘空间大小的限制
- C.一个文件系统只能将数据存放在一个磁盘上
- D.文件系统可以管理的文件数量受限于该文件系统的文件控制块数量
Q61¶
某文件系统采用位示图(1024行,32列)表示空闲盘块情况,位示图行和列、盘块号都从0开始编号,则 4567 号块位于第( )行,( )列。
- A.22,142
- B.142,23
- C.23,143
- D.143,23
Q62¶
在现代操作系统中,文件分配表引入了“簇”的概念,下列关于“簇”的说法错误的是( )。
- A.磁盘容量不断增大,因此不再以盘块而以簇为基本单位进行盘块分配,一簇应包含扇区的数量与磁盘容量大小直接相关
- B.以簇为基本分配单位,可以减少 FAT 表的表项数,在相同的磁盘容量下,FAT 表的表项数与簇的大小是成正比的
- C.以簇为基本分配单位,可以使 FAT 表占用更少的存储空间
- D.以簇为基本分配单位,可以减少访问 FAT 表的存取开销
Q63¶
某文件系统采用位示图法管理外存储空间,每个磁盘块 4KB,已知一块磁盘容量为 40GB,则表示该磁盘所需的位示图需要占用的内存空间( )。
- A.1280KB
- B.10240KB
- C.4096KB
- D.10MB
Q64¶
关于文件存储空间的管理方式,( )需要使用空闲盘块号栈。
- A.空闲表法
- B.空闲链表法
- C.位示图法
- D.成组链接法
Q65¶
若用 8 个字(字长 32 位)组成的位示图管理内存,字号、位号、块号均从 0 开始算起,则块号为 100 的内存块对应的位示图位置为( )。
- A.字号为 3,位号为 5
- B.字号为 3、位号为 4
- C.字号为 4,位号为 4
- D.字号为 4,位号为 5
Q66¶
在操作系统中,成组链接法用于管理空闲磁盘块,其主要特点是( )。
- A.所有空闲块用一条链表链接,每块指向下一块
- B.每个空闲块用一位标记空闲或占用状态
- C.每个空闲块记录一组空闲块编号,并指向下一组
- D.所有空闲块信息存放在空闲表中,查找效率高
Q67¶
关于空闲磁盘分配方式,说法错误的是( )。
- A.位示图法空间开销固定,但可能需要线性复杂度找到空闲块
- B.空闲区表法空间开销可能很大,但方便找到一片连续的空闲块
- C.空闲链表法分配和回收非常简单,但不支持合并
- D.成组链表法克服了空闲区表法和空闲链表法表太长的缺点,且分配速度快且空间开销小
Q68¶
在使用成组链表法方式下,若每个空闲盘块最多可以记录4个空闲盘块号,内容是[3,11,408,666],3 表示已经记录 3 个磁盘块,[11,408,666]分别是这三个空闲磁盘块的块号,它是一个栈,666所在方向是栈顶。现对某个进程回收 2 个磁盘块,分别是[985,211],超级块内容变为( ),接着给另一个进程分配 3 个空闲磁盘块,超级块的内容变为( )。
- A.[5, 11, 408, 666, 985, 211], [2, 11, 408]
- B.[2, 985, 211], [5, 11, 408, 666]
- C.[1, 11], [2, 11]
- D.[1, 211], [2, 11, 408]
Q69¶
下列关于文件系统和虚拟文件系统(VFS)的说法中正确的是( )。
- A.每种操作系统都有自己专有的文件系统,不同操作系统之间文件系统完不兼容
- B.VFS 不能同时支持多种文件系统
- C.通过 VFS,应用程序可以不关心底层使用的是哪种文件系统
- D.文件系统挂载是一个不可逆的操作,一旦挂载无法卸载
Q70¶
关于虚拟文件系统(VFS),以下描述中不正确的是( )。
- A.VFS 为不同的文件系统提供一个抽象层
- B.VFS 允许用户在不同类型的文件系统中进行无缝切换
- C.所有操作系统都使用相同的 VFS 实现
- D.VFS 允许系统调用如 open 和 read 与特定文件系统无关
Q71¶
关于虚拟文件系统(VFS)的四个主要对象,下列说法错误的是( )。
- A.超级块(superblock)对象代表一个特定的已挂载的文件系统,VFS 超级块仅存在于内存中
- B.索引节点(inode)对象代表一个特定的文件,VFS 的 vnode 仅存在于内存中,而具体文件系统的 inode 既在内存也在外存
- C.目录项(dentry)对象代表路径的组成部分,为了支持硬链接,同一个 inode 可以对应多个不同的 dentry 对象
- D.文件(file)对象代表与进程相关的打开的文件,同一个文件被多个进程打开时,内存中只有一个 file 对象,但对应多个 inode 对象
Q72¶
在计算机操作系统中,对于文件挂载的过程和相关概念,哪个选项的描述是正确的?( )。
- A.文件挂载是将一个文件复制到另一个目录中,并将其与目录树中的挂载点关联,使其可访问和操作
- B.文件挂载是将一个目录连接到另一个目录,使其成为目录树的一部分,并与外部文件系统关联
- C.文件挂载是将一个文件系统连接到计算机的硬件设备,使文件系统中的文件和目录可供访问
- D.文件挂载是将一个文件压缩并加密后存储在磁盘上,并与特定的解密工具关联,以便访问和操作
Q73¶
某 Unix 系统中,多个单独设备上的多个文件系统被挂载到一个统一的文件系统中。假设某光盘文件系统中包含一个路径名为/usr/bin/vim 的文件,且光盘被挂载到/media/disk 处,则整个文件系统中这个文件的路径名是( )。
- A./usr/bin/vim
- B./media/vim
- C./media/usr/bin/vim
- D./media/disk/usr/bin/vim
Q74¶
某文件系统采用索引分配。文件 F1 和 F2 是指向同一个 inode 的两个硬链接。现用户进程对 F1执行写操作,使其文件大小从 4KB 增长到 8KB(系统盘块大小为 4KB)。关于此过程,下列说法正确的是( )。
- A.F2 的文件长度仍显示为 4KB,因为 F2 所在的目录项尚未被更新
- B.系统需要为 F1 新分配一个数据块,并更新 F1 和 F2 各自独立的 inode 中的数据块指针
- C.系统需要新分配一个数据块,并更新该共享 inode 中的物理块指针和文件大小,F2 再次访问时能读取到新数据
- D.若随后用户进程通过 F1 删除了该文件,则系统会立即回收该文件占用的物理数据块,导致 F2再次访问时失败
Q75¶
某文件系统采用多级树形目录结构,目录项仅由“文件名(10B)+ inode 号(2B)”组成,磁盘块大小为 512B。每个 inode占用 128B,单独存放在 inode区。假设根目录所在磁盘块常驻内存,当前工作目录为 /dirA/dirB,且目录文件 dirB 的 inode 及文件内容均已缓存在内存中。系统无任何其他缓存。用户进程请求打开文件:① 绝对路径 /dirA/dirB/dirC/file.txt ② 相对路径 dirC/file.txt最坏情况下(线性检索且目录项不跨块),打开文件 file.txt 至少需要访问磁盘的次数分别是( )。
- A.4, 1
- B.4, 2
- C.5, 2
- D.5, 3
审计旁注(非原文):作废
未给目录项数量或目录占块数,无法唯一计算。
Q76¶
在文件系统运行期间,许多数据结构需要在内存和外存之间同步或独占存在。根据虚拟文件系统(VFS)及常规文件系统的基本原理,下列数据结构中,仅存在于内存中的是( )。
- A.超级块对象(VFS superblock)与 VFS 索引节点(vnode)
- B.磁盘超级块(Disk superblock)与 目录项(dentry)
- C.进程打开文件表与 磁盘索引节点
- D.系统打开文件表与 磁盘位示图
Q77¶
某文件系统布局中,超级块记录了 inode区起始块号、inode 区总块数、位图起始块号、位图总块数等信息。假设 inode 大小固定,下列说法中正确的是( )。
- A.位图总块数决定了该文件系统最多能创建多少个文件
- B.inode区总块数决定了该文件系统最多能创建多少个文件
- C.文件的读写操作每次都必须直接访问磁盘中的超级块以获取文件元数据
- D.超级块中的信息在物理格式化(低级格式化)时写入磁盘
Q78¶
外存存储空间的分配和回收与内存管理有相似之处。关于空闲表法,下列说法中错误的是( )。
- A.空闲表法为所有空闲区建立一张表,记录每个空闲区的起始块号和块数
- B.该方法主要适用于连续分配方式的文件系统
- C.当外存中存在大量细小的碎片时,空闲表会变得很大,导致检索效率严重下降
- D.回收空闲区时,如果回收区前后都有相邻空闲区,系统需在空闲表中增加一个新的表项
Q79¶
在大型文件系统中,频繁的文件创建与删除会导致大量的空闲空间分配与回收。从磁盘 I/O 操作次数的角度来看,下列关于空闲空间管理方法的对比,说法正确的是( )。
- A.空闲盘块链法在回收磁盘块时,由于只需修改链尾指针,因此完全不需要磁盘 I/O
- B.位示图法在分配和回收时,必须将整个位示图完整读入内存,I/O 开销最大
- C.成组链接法将索引块常驻内存,只有在分组用尽或满溢时才触发磁盘 I/O,在大系统中 I/O 效率极高
- D.空闲表法由于表项常驻超级块,任何情况下的分配回收都不会引发磁盘 I/O
Q80¶
某文件系统采用成组链接法管理空闲磁盘块。假设每组最多包含 100 个盘块号,当前内存超级块中保存的“分组 0”仅剩 1 个空闲盘块号(即该分组的索引块本身)。此时若进程申请分配 1 个空闲盘块,系统的操作顺序是( )。
- A.直接将超级块中的这 1 个盘块号分配给进程,超级块中的空闲块数变为 0
- B.先将该索引块的内容(下一组的盘块号)读入内存超级块,然后将该索引块分配给进程
- C.将该索引块分配给进程,然后触发磁盘 I/O 将下一组的盘块号读入内存,并更新超级块
- D.拒绝分配,直到有进程释放磁盘块,使“分组 0”的盘块数恢复
Q81¶
在成组链接法中,若当前内存超级块中的“分组 0”已经包含了 100 个空闲盘块号(达到上限),此时系统回收 1 个新的空闲盘块,下列操作正确的是( )。
- A.将新回收的盘块号直接追加到“分组 0”中,使其包含 101 个盘块号
- B.将新回收的盘块作为新的索引块,把当前“分组 0”的 100 个盘块号写入该新盘块中,然后将新盘块号放入超级块作为新的“分组 0”
- C.将新回收的盘块号放入超级块,并将超级块中原有的一个盘块号写入新回收的盘块中
- D.将新回收的盘块直接链接到“分组 1”的末尾,不修改超级块中的“分组 0”