📜  门| GATE CS 2021 |设置 1 |问题 25

📅  最后修改于: 2021-09-24 05:11:03             🧑  作者: Mango

考虑文件系统中基于线性列表的目录实现。每个目录都是一个节点列表,其中每个节点都包含文件名以及文件元数据,例如指向数据块的指针列表。考虑一个给定的目录 foo。

以下哪些操作必须需要对 foo 进行全面扫描才能成功完成?
(A)在 foo 中创建一个新文件
(B)从 foo 中删除现有文件
(C)在 foo 中重命名现有文件
(D)在 foo 中打开现有文件答案: (A) (C)
说明:由于目录包含节点列表,其中每个节点包含文件名以及文件元数据,例如指向数据块的指针列表,

我们必须完全扫描 foo 以重命名现有文件,并且目录中不允许重复文件名,因此,要创建新文件,首先我们必须检查它是否已经存在,并且需要完整的扫描。
这个问题的测验