操作系统(24)--索引分配方法.pdfVIP

  • 35
  • 0
  • 约3.18千字
  • 约 3页
  • 2022-07-09 发布于山东
  • 举报
7.9 索引分配方法 链接分配解决了连续分配的外部碎片和大小声明问题。但是,如果不用 FAT ,那么链接分配 就不能有效支持直接访问,这是因为块指针与块一起分布整个磁盘,且必须按顺序读取。 索引 分配(indexed allocation )通过把所有指针放在一起,即通过索引块解决了这个问题。 每个文件都有其索引块,这是一个磁盘块地址的数组。索引块的第i个条目指向文件的第i个 块。目录条目包括索引块的地址 (图7.22)。要读第i块,通过索引块的第i个条目的指针来查找和读 入所需的块。这一方法类似于5.3小节所描述的分页方案。 图7.22磁盘空间的索引分配 当创建文件时,索引块的所有指针都设为 nil。当首次写入第i块时,先从空闲空间管理器中 得到一块,再将其地址写到索引块的第i个条目。 索引分配支持直接访问,且没有外部碎片问题,这是因为磁盘上的任一块都可满足更多空 间的要求。索引分配会浪费空间。索引块指针的开销通常要比链接分配的指针开销要大。设想一 下一般情况,每个文件只有一块或两块长。采用链接分配,每块只浪费一个指针。采用索引分配 , 尽管只有一个或两个指针为非空,也必须分配一个完整的索引块。 这也提出了一个问题:索引块应为多大?每个文件必须有一个索引块

文档评论(0)

1亿VIP精品文档

相关文档