现代操作系统第四章文件的系统PPT.ppt

  1. 1、本文档共100页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
现代操作系统第四章文件的系统PPT

* UNIX V7文件系统 UNIX的i-节点 * UNIX V7文件系统 查找/usr/ast/mbox的步骤 * 小结 从外部观察,文件系统是文件和目录的集合,加上其上的操作。 文件可以被读和写,目录可以被创建和销毁,而且文件可以从一个目录移到另一个目录。 大部分现代文件系统都支持层次目录系统,这种系统的目录可能包含子目录,而且可能无限地子目录下去。 * 小结 从内部观察,文件系统看起来就区别很大了。文件系统的设计者必须考虑如何分配存储器,以及系统如何记录哪一块用于哪个文件。 其可能的办法包括:连续文件、链表、文件分配表以及i-节点。不同的系统有不同的目录结构。 属性可以保存在目录中,也可以保存在其他地方(例如,i-节点中)。 * 小结 磁盘空间的管理可以使用链表或者位映像。 通过增加转储以及使用程序修复坏的文件系统,可以增强文件系统的可靠性。 文件系统的性能非常,有多种方法可以提高其性能,包括:caching、提前读取以及将文件块相互临近地放置。 日志结构的文件系统也可以通过在大的单元中写入来改进性能。 * 小结 文件系统的例子包括ISO 9660、CP/M、MS-DOS、Windows 98以及UNIX。 它们在很多方面都有区别,包括其记录文件块的方式、目录结构以及空闲磁盘空间的管理。 * 文件系统可靠性 备份(Backups) 文件系统一致性(File System Consistency) * 备份(Backups) 即使有再好的处理坏块的策略,经常地备份文件也是很重要的。 毕竟,在一些关键的数据块损坏之后,自动切换到备用块,无异于亡羊补牢。 备份软盘上的文件系统很简单,只需把整个磁盘复制到一张空软盘上。 物理转储(physical dump):转储所有的磁盘块 逻辑转储(logical dump):只转储自某个时间以来被修改的文件和目录 * 备份(Backups) 被转储的文件系统。方框表示目录,圆圈表示文件。灰色的项表示上次转储后被修改过。每个目录和文件都使用其i-节点号标记。 * 备份(Backups) 算法: Step1:所有的目录和已修改的文件相应的I节点号在位图中被标记,如下图a Step2:其下没有包含被修改的子目录和文件的目录其I节点标记被删除,如下图b Step3:扫描位图,转储所有被标记的目录 Step4:扫描位图,转储所有被标记的文件 * 逻辑转储使用的位映像 备份(Backups) * 文件系统一致性 影响文件系统可靠性的另一个问题是文件系统的一致性。 很多文件系统读取磁盘块,进行修改后,再写回磁盘。 如果在修改过的磁盘块全部写回之前,系统崩溃,则文件系统有可能会处于不一致状态。 如果未被写回的块是i-节点块、目录块或者包含空闲表的磁盘块时,这个问题尤为严重。 系统启动时运行一个实用程序检查一致性,包括块一致性检查和文件一致性检查 * 块一致性检查 方法 检查程序构造两张表,每个表为每个块设立一个计数器(初始化为0)。第一张表中计数器跟踪块在文件中的出现次数;第二张表中计数器跟踪块在空闲链表中出现次数。 检查程序读取全部的I节点,建立相应文件所使用的全部块的块号表。每读到一个块号,第1张表中该块对应计数器增1;检查程序检查链表(或位图),查找全部未使用的块,每找到一个,第二张表中该块对应计数器增1。 * 块一致性检查 文件系统一致:每个块要么在第一个计数器中为1,要么在第二个计数器中为1 文件系统不一致: 两个计数器值都为0——丢失块 第一个计数器值超过1——分配空闲块,将文件中内容写入空闲块 第二个计数器值超过1——重建空闲表 两个计数器中值都等于1——把块从空闲表中删除 * 块一致性检查 文件系统状态 (a) 一致的 (b) 缺少的块 (c) 在空闲列表中复制块 (d) 复制数据块 * 文件一致性检查 方法: 使用一张计数器链表,以I节点号索引,每个文件一个计数器。检查程序从根目录开始,沿目录树搜索,遇到一个文件,则相应计数器加1(符号链接不计)。搜索完毕,表中每个计数器表示此文件被多少目录所包含,并把此值与实际I节点中的链接数比较(文件创建时,链接数等于1) 不一致 实际链接数计数器 实际链接数计数器 * 文件系统性能 缓存 提前读块(Block Read Ahead)策略 减少磁盘臂移动(Reducing Disk Arm Motion) * 文件系统性能 对磁盘的存取比对内存的存取要慢。 读一个内存字可能花10纳秒。从硬盘读可能以10 MB/sec进行,每32位的字要慢40倍,不过,还必须加上5-10毫秒的寻道时间,并且等待扇区旋转到磁头下。 如果只需要一个字,内存存取要比磁盘存取快上100万倍。 由于存取时间的这种区别,许多文件系统设计了各种优化方法来

文档评论(0)

liwenhua00 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档