🏷️ 知识点:文件分配表

共 3 道相关题目

2025 年第 31 题 操作系统 选择题

下列选项中,可被文件系统用于外存空间使用情况的是( )。

外存空间管理

A. 目录 B. 系统打开文件表 C. 文件分配表(FAT) D. 文件控制块(FCB)

[tag_link]

正确答案:C

文件分配表(FAT)是文件系统用来记录磁盘块(簇)使用情况的数据结构。它记录了哪些磁盘块是空闲的,哪些已经被文件占用,因此文件系统可以通过 FAT 来管理空闲空间。

  • A. 目录用于存储文件和子目录的元数据(如文件名、位置等),但不直接管理空闲空间。
  • B. 系统打开文件表:用于记录当前打开的文件及其状态,与空闲空间管理无关。
  • D. 文件控制块(FCB):FCB 记录单个文件的元数据(如大小、位置等),不直接记录整个外存空间使用情况。

2016 年第 47 题 计算机网络 综合题

[tag_link]

某磁盘文件系统使用链接分配方式组织文件,簇大小为 4KB。目录文件的每个目录项包括文件名和文件的第一个簇号,其他簇号存放在文件分配表 FAT 中。

(1) 假定目录树如下图所示,各文件占用的簇号及顺序如下表所示,其中 dir、dir1 是目录,file1、file2 是用户文件。请给出所有目录文件的内容。

2016_Q45_15

2016_Q45_15

(2) 若 FAT 的每个表项仅存放簇号,占 2 个字节,则 FAT 的最大长度为多少字节?该文件系统支持的文件长度最大是多少?

(3) 系统通过目录文件和 FAT 实现对文件的按名存取,说明 file1 的 106、108 两个簇号分别存放在 FAT 的哪个表项中。

(4) 假设仅 FAT 和 dir 目录文件已读入内存,若需将文件 dir/dir1/file1 的第 5000 个字节读入内存,则要访问哪几个簇?

目录 文件分配表

1)两个目录文件 dir 和 dirl 的内容如下表所示。(3 分) 【评分说明】每个目录项的内容正确给 1 分,共 3 分。

2)由于 FAT 的簇号为 2 个字节,即 16 比特,因此在 FAT 表中最多允许 2¹⁶(65536)个表项,一个 FAT 文件最多包含 2¹⁶(65536)个簇。FAT 的最大长度为 2¹⁶×2B=128KB。(1 分)文件的最大长度是 2¹⁶×4B=256MB。(1 分) 【评分说明】若考生考虑到文件结束标志、坏块标志等,且答案正确,同样给分。

3)在 FAT 的每个表项中存放下一个簇号。file1 的簇号 106 存放在 FAT 的 100 号表项中,(1 分)簇号 108 存放在 FAT 的 106 号表项中。(1 分)

4)先在 dir 目录文件里找到 dir1 的簇号,然后读取 48 号簇,得到 dir1 目录文件,接着找到 file1 的第一个簇号,据此在 FAT 里查找 file1 的第 5000 个字节所在的簇号,最后访问磁盘中的该簇。因此,需要访问目录文件 dir1 所在的 48 号簇,(1 分)及文件 file1 的 106 号簇。(1 分)


2016 年第 47 题 计算机网络 综合题

[tag_link]

某磁盘文件系统使用链接分配方式组织文件,簇大小为 4KB。目录文件的每个目录项包括文件名和文件的第一个簇号,其他簇号存放在文件分配表 FAT 中。

(1) 假定目录树如下图所示,各文件占用的簇号及顺序如下表所示,其中 dir、dir1 是目录,file1、file2 是用户文件。请给出所有目录文件的内容。

2016_Q45_15

2016_Q45_15

(2) 若 FAT 的每个表项仅存放簇号,占 2 个字节,则 FAT 的最大长度为多少字节?该文件系统支持的文件长度最大是多少?

(3) 系统通过目录文件和 FAT 实现对文件的按名存取,说明 file1 的 106、108 两个簇号分别存放在 FAT 的哪个表项中。

(4) 假设仅 FAT 和 dir 目录文件已读入内存,若需将文件 dir/dir1/file1 的第 5000 个字节读入内存,则要访问哪几个簇?

目录 文件分配表

1)两个目录文件 dir 和 dirl 的内容如下表所示。(3 分) 【评分说明】每个目录项的内容正确给 1 分,共 3 分。

2)由于 FAT 的簇号为 2 个字节,即 16 比特,因此在 FAT 表中最多允许 2¹⁶(65536)个表项,一个 FAT 文件最多包含 2¹⁶(65536)个簇。FAT 的最大长度为 2¹⁶×2B=128KB。(1 分)文件的最大长度是 2¹⁶×4B=256MB。(1 分) 【评分说明】若考生考虑到文件结束标志、坏块标志等,且答案正确,同样给分。

3)在 FAT 的每个表项中存放下一个簇号。file1 的簇号 106 存放在 FAT 的 100 号表项中,(1 分)簇号 108 存放在 FAT 的 106 号表项中。(1 分)

4)先在 dir 目录文件里找到 dir1 的簇号,然后读取 48 号簇,得到 dir1 目录文件,接着找到 file1 的第一个簇号,据此在 FAT 里查找 file1 的第 5000 个字节所在的簇号,最后访问磁盘中的该簇。因此,需要访问目录文件 dir1 所在的 48 号簇,(1 分)及文件 file1 的 106 号簇。(1 分)