文章

166

粉丝

0

获赞

0

访问

10.1k

头像
2011年计算机学科专业基础综合试题 - 第46题回答
操作系统
发布于2025年6月24日 20:09
阅读数 90


(1)

  • 索引分配:索引分配将文件的所有数据块地址集中存储在一个索引块中。由于文件不可修改,一旦写入,索引块的内容就固定了。这带来了以下优点:
    • 高效随机访问: 可以通过索引块直接定位任何数据块,读写效率高。
    • 无需外部碎片: 数据块可以分散在磁盘的任何位置,解决了连续分配的外部碎片问题。
    • 写入效率高: 每次写入新文件,只需找到空闲的磁盘块并将地址记录到索引块中即可,系统能够快速找到空闲块并分配。
    • 符合“一次性写入”特性: 文件大小确定后,索引块的内容也确定,无需担心后续修改或扩展。

      需要在FCB中设计的相关描述字段(针对索引分配):

      除了文件名、文件大小、创建时间等通用字段外,为了定位文件数据块,FCB(文件控制块)需要包含以下核心字段:

    • 索引块地址(Index Block Address / Pointer to Index Block): 这是最关键的字段。它指向存储该文件所有数据块地址的索引块在磁盘上的物理地址(通常是块号)。通过这个地址,系统可以加载索引块,进而获取所有数据块的地址。
    • 文件大小(File Size): 虽然不是直接用于定位数据块,但它结合索引块地址可以计算出需要读取多少个数据块。

(2)为快速找到文件,FCB(通常称为目录项)应该集中存储。

理由:

  1. 快速查找和遍历:

    • 集中存储: 将所有FCB(或至少是目录项,FCB的精华部分)集中存储在目录文件中(例如,一个目录文件包含一系列FCB或指向FCB的指针)。当用户或应用程序需要查找文件时,只需读取和遍历这个(或这些)目录文件,就能快速找到目标文件的FCB,从而获取文件信息和数据块地址。这就像查字典,所有词条的索引(FCB)都集中在字典的开头或目录页,方便快速查找。
    • 与文件数据块连续存储: 如果FCB与文件数据块连续存储,那么系统在查找特定文件时,将不得不逐个扫描磁盘上的所有文件数据块的起始位置,以寻找其配套的FCB。这效率极低,因为文件数据块可能是分散的,且大小不一。这种方式等同于遍历整个磁盘,无法实现快速查找。
  2. 管理效率和...

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发