操作系统第九章文件和设备管理示例.pptVIP

操作系统第九章文件和设备管理示例.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
中型文件的索引结构:当一个文件的长度在10~138磁盘块内时,就成为一个UNIX的中型文件。这时除了用到di_addr[0]~di_addr[9]外,还要用到di_addr[10],如下图所示。 在图中,di_addr[0]~di_addr[9]仍然直接指向文件数据存放的10个磁盘块号,然后又利用di_addr[10]指向一个磁盘块。这块并不存放文件的数据,而是利用它形成又一级的索引。在UNIX中,用4个字节放一个磁盘块号,因此在这个盘块中,可以放128个磁盘块号。这样一来,通过di_addr[10]提供的索引,一个文件就可以达到138个磁盘存储块这么大。 * 第三十页,共六十五页。 * 第三十一页,共六十五页。 大型和巨型文件的索引结构: 当一个文件的长度在138~16522磁盘块内时,就成为一个UNIX的大型文件。这时除了用到di_addr[0]~ di_addr[9]外,要用到di_addr[10],还要用到di_addr[11]。 在图中,di_addr[0]~di_addr[9]直接指向文件数据存放的10个磁盘块号。然后如同前面那样,利用di_addr[10]指向一个磁盘块,由它提供128个磁盘块的索引,从而使文件总共达到138个磁盘存储块这么大。但这还不够,又利用di_addr[11]指向一个磁盘块,由它指向128个磁盘块,每个都是一个索引。这样,通过这128个索引、每个指向128个磁盘块,就又可以得到16384个磁盘块。于是,UNIX的大型文件最多可以拥有16522个磁盘块(即10+128+16384)。 * 第三十二页,共六十五页。 * 第三十三页,共六十五页。 当一个文件所需的磁盘块大于16522个磁盘块时,就成为UNIX的巨型文件了。这时除了用到di_addr[0]~di_addr[9]外,还要用到di_addr[10]、di_addr[11]和di_addr[12]。此时,文件的最大长度可以达到约11亿个字节,但是由于此时要经过多次间接索引,会使系统的查找速度大大降低。 * 第三十四页,共六十五页。 9.4 目录与检索方法 目录的构造和删除 创建一新文件时,UNIX系统利用makenode过程在其父目录文件中为之构造一个目录项。 目录的检索 由namei过程利用散列搜索法完成,其根据用户给出的文件路径名,从高层到低层顺序地查找各级文件目录,寻找指定文件的内存i节点指针。 * 第三十五页,共六十五页。 9.5 文件系统的系统调用 UNIX提供了一些系统调用命令,以便用户在程序一级完成对文件的操作。有关的系统调用是:creat、open、read、write、close、chdir、chown、chmod、link和unlink等。下面对它们各自的功能做粗略的描述。 creat(建立文件) open(打开文件) close(关闭文件) read(读) write(写) * 第三十六页,共六十五页。 link(链接) 系统调用link可以为一个已经存在的文件开辟一条新的路径,也就是说,可以为一个文件再取一个新的名字。它的使用格式是: link(pathname1,pathname2); 其中参数pathname1是原文件的路径名,参数pathname2为其新取的路径名。 link处理程序先按照参数pathname2的指点,将新的文件名登记到指定的路径目录中。然后根据pathname1,找到原文件所对应的i节点编号,将该号填入新文件的文件目录中。由于每个文件的i节点编号是惟一的,因此经过link之后,两个不同路径名的文件就与同一个文件相对应了。 * 第三十七页,共六十五页。 unlink(去链接) * 第三十八页,共六十五页。 比如考虑上图的情形。zong和wang要共同完成一项工作。zong为了访问对方的文件x,只能通过“/usr/wang/x”才能达到目的。但如果通过命令: link(/usr/wang/x,/usr/zong/k); 那么,若当前目录为zong,则zong直接通过k就能够访问wang的文件x了,这是因为link命令在zong的文件k和wang的文件x之间建立了链接的缘故。如图(b)所示。 * 第三十九页,共六十五页。 9.6 UNIX的设备管理 UNIX设备管理概述 UNIX是根据设备与内存之间信息交换的单位来对设备进行分类的,因此在整个系统中,归到设备管理的有两类设备:块设备和字符设备。前者与内存之间以成组信息为单位进行信息交换,比如硬盘、软盘、磁带都属于块设备。由于这些设备是用来存储信息的,因此有时把它们称为存储设备;后者与内存之间以字节为单位进行信息交换,比如键盘输入、显示

文档评论(0)

虾虾教育 + 关注
官方认证
文档贡献者

有问题请私信!谢谢啦 资料均为网络收集与整理,收费仅为整理费用,如有侵权,请私信,立马删除

版权声明书
用户编号:8012026075000021
认证主体重庆皮皮猪科技有限公司
IP属地重庆
统一社会信用代码/组织机构代码
91500113MA61PRPQ02

1亿VIP精品文档

相关文档