外存分配方式.ppt

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

分配方法 连续分配 链式分配 索引分配 分配方法-连续分配 连续分配:创建文件时,分配一组连续的块;FAT中每个文件只要一项,说明起始块和文件的长度。对顺序文件有利。 优点: 简单。适用于一次性写入的操作 支持顺序存取和随机存取,顺序存取速度快 所需的磁盘寻道次数和寻道时间最少(因为由于空间的连续性,当访问下一个磁盘块时,一般无需移动磁头,当需要磁头移动,只需要移动一个磁道。 缺点: 文件不能动态增长(可能文件末尾处的空块已经分配给别的文件) 不利于文件插入和删除 外部碎片问题(反复增删文件后),使得很难找到空间大小足够的连续块。进行紧缩 在创建文件时声明文件的大小。 分配方法-链式分配 链式分配:一个文件的信息存放在若干不连续的物理块中,各块之间通过指针连接,前一个物理块指向下一个物理块。FAT中每个文件同样只需要一项,包括文件名、起始块号和最后块号。任何一个自由块都可以加入到链中。 优点: 提高了磁盘空间利用率,不存在外部碎片问题 有利于文件插入和删除 有利于文件动态扩充 缺点: 存取速度慢,一般仅适于对信息的顺序存取,不适于随机存取:查找某一个块必须从头开始沿指针进行。 可靠性问题,如指针出错;更多的寻道次数和寻道时间 链接指针占用一定的空间,将多个块组成簇(cluster),按簇进行分配而不是按块进行分配(增加了磁盘碎片)。 例 题 一个已经打开的连续文件,要读取其第10号数据块,则需要____次I/O操作;对于链式文件需要____次I/O操作? 设某个文件为链式文件,由5个逻辑记录组成,每个逻辑记录的大小与磁盘块大小相等,均为512字节,并依次存放在50、121、75、80、63号磁盘块上。若要存取文件的第1569逻辑字节处的信息,问要访问哪一个磁盘块? 文件的分配方法-索引分配 索引分配:每个文件在FAT中有一个一级索引,索引包含分配给文件的每个分区的入口。文件的索引保存在一个单独的块中。FAT中该文件的入口指向这一块。 优点: 保持了链接结构的优点,又解决了其缺点:按块分配可以消除外部碎片,按大小可变的分区分配可以提高局部性。索引分配支持顺序访问文件和直接访问文件,是普遍采用的一种方式。 满足了文件动态增长、插入删除的要求(只要有空闲块) 也能充分利用外存空间 缺点: 较多的寻道次数和寻道时间. 索引表本身带来了系统开销, 如:内外存空间,存取时间 举例:文件操作 2种方式 命令级接口:dir、copy等 系统调用:文件系统的程序级接口,用户可以在程序中使用这些系统调用对文件进行各种操作。 如建立文件、打开文件、关闭文件、删除文件、读文件、写文件。 举例:文件操作 建立文件:creat(文件名、文件属性) 检查参数合法性:按给定的路径查文件目录,找出用户指定的目录位置,检查目录上是否存在同名文件,若存在则发出错误信息。 在指定的目录中找一个空表项作为该文件的目录项,写入指定的文件名。 由文件长度确定文件存储所需的物理块数。 按规定的物理结构为文件分配存储空间。对连续文件,则分配块连续的空间,对索引文件,现分配索引表用的物理块。 在该文件目录项中写入文件的属性、文件的物理块首址等。 举例:文件操作 打开文件(open): 按指定的文件名检索文件目录,将待访问文件的目录信息读入内存活动文件表中,建立起用户和文件的联系。 一旦文件被打开就可以多次使用。直到文件被关闭。 多重索引结构 大文件:设一个盘块大小为1KB,长度为100KB的文件就需要100个盘块,索引表至少包含100项;若文件大小为1000KB,则相应索引表项要有1000项。设盘块号用4个字节表示,则该索引表至少占用4000B(约4K)。 当文件很大时,存在的问题: 需要很多的磁盘块 索引表很大 不能将整个索引表放在内存 解决途径:采取多重索引结构 多重索引结构-图示 多重索引结构-举例- Unix的索引节点 为此,我们可以将文件名和其他信息分开,后者单独形成一个独立的数据结构,称为索引节点(index node或者i_node).对应的目录项就不再是完整的一个FCB,而是由文件名和指向索引节点的指针组成. 在引入索引节点之后,一个文件在创建后将立即有与之对应的一个磁盘索引节点.若该文件被调进内存,将立即有对应的一个内存索引结点. 多重索引结构-举例- Unix的索引节点 文件分配以块为基础。按照需要动态进行,不是预定义的。 文件在磁盘中的块不一定是连续的。 Unix系统为了访问文件,采用索引的方法,索引的一部分保存在该文件的索引节点中。 文件系统 索引节点(I节点) 所有类型的Unix文件都是由OS通过索引节点来管理的 索引节点是一个控制结构,包含OS所要的关于某个文件的重要信息: 文件模式 链接计数 所有者ID 组ID 文件大小

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档