高级的操作系统chp4.ppt

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

第四章文件系统 文件系统存在的原因在于系统要求对数据进行长期的存储。 (1)可以存储大量信息 (2)在使用信息时,信息要存在 (3)必须能使多个进程并发存取有关信息 解决的方法是采用文件的形式来管理信息。主要包括对文件的操作,如何分配存储空间,及相应的保护机制。 处理文件的操作系统的部分称为文件系统(File System)。 4.1 文件 (1)域:是数据的基本单位。有自己的长度和数据类型。在不同的文件系统中,域可以是定长的,也可以是变长的。 (2)记录:是相关域的集合。记录也可以是定长的,也可以是变长的。 (3)文件:是具有名字的一组相关记录的集合。 文件是一个单独的实体,也可以创建和删除。对于访问的控制和限制通常是文件级的。在复杂的系统中,对访问的控制和限制也可以是记录级或域级的。 4.1.1 文件命名 文件命名是管理文件的有效形式。当进程创建文件时给出文件名,在进程终止之后,文件名依然存在,其它进程可以通过这个文件名对文件进行存取。 文件的具体命名规则在不同的系统中是不同的。 很多的操作系统都采用圆点隔开的两部分的文件名。圆点后的部分称为扩展名,表示文件的一些信息。扩展名只是一些约定,并没有强迫采用。 4.1.2 文件结构 文件结构通常有三种方式:字节序列、记录序列、树。 在字节序列中操作系统并不关心文件的内容,它的任何含义都可以由用户进程来解释。在UNIX和MS-DOS中采用这种方法。这种方法的特点是灵活,缺点是操作系统不能、提供任何形式的帮助。 在记录序列中文件是具有一定长度的记录的序列,每个记录都有它的内部结构。记录是文件增加、删除、修改的单位。记录的长度是相等的。这种方法在早期的计算机系统中。 在树结构中,文件由一棵记录树构成,每个记录的长度可以不相等,记录的固定位置上有关键字段,记录按关键字段排序,可以实现快速查找。主要用于现代的商业系统。 4.1.3 文件类型 文件类型有很多种。例如UNIX和MS-DOS中有普通文件、目录文件、字符特殊文件、块特殊文件。 在普通文件中包含用户要存储的信息,是本章的重点。 在目录文件中保存磁盘文件系统结构,是系统文件。 在字符特殊设备中管理和设备的输入输出。 使用块特殊文件用于表示磁盘。 普通文件是ASCII文件或者二进制文件。 ASCII文件由多行正文组成,可以显示和打印。可以用通用的文本编辑器进行编辑。 二进制文件不用于显示和打印,有一定的内部结构。 4.1.4 文件存取 文件存取类型有顺序存取、随机存取。 顺序存取指用户只能从开始的地方顺序读文件的所有记录,不能跳过一些内容。主要用于磁带设备。 随机存取指可以按任何次序读取记录。如按照关键字来进行读取。主要用于磁盘设备。 4.1.5 文件属性 操作系统为管理文件为文件保存文件属性。 文件属性在不同的操作系统中有很大的差别。 保护、口令、创建者、所有者等属性(文件保护) 各种标志(如只读、隐藏、系统、存档) 记录长度、关键字位置、关键字长度(查找) 文件的创立时间、最近访问时间、最近修改时间 文件的长度 4.1.6 文件操作 CREATE:创建没有数据的文件,并设置文件属性。 DELETE:删除文件,释放磁盘空间。 OPEN:使用文件之前必须打开文件。用于把文件属性和磁盘地址表装入内存。 CLOSE:不再使用文件时,关闭文件释放文件属性和磁盘地址表占用的空间。 READ:从文件的当前位置中读取数据。应指明读取的长度和存放数据的缓冲区。 WRITE:对文件写数据。如果当前位置是文件末尾,则文件长度增加。如果不是,则覆盖现有数据。 APPEND:在文件的末尾增加数据。 SEEK:定位当前位置指针到指定位置。 GET ATTRIBUTES:读取文件属性。 SET ATTRIBUTES:设置文件属性。 RENAME:重命名文件。 4.1.7 存储映像文件 为了减少从磁盘上访问文件的不方便,一些系统提供一种将文件映像到一个正在运行的进程的地址空间中。 用两个系统调用MAP和UNMAP来实现。前者给出一个文件名和一个虚拟地址,从而使操作系统把文件映像到虚拟地址指定的地址空间。 当进程结束时,将地址空间的内容写回磁盘。 这种方法的缺点是: (1)在页式管理中,无法知道一个文件的实际长度。 (2)当多个进程同时调用一个文件并修改文件的内容时,有可能造成文件的映像的不一致性。 (3)文件有可能很大,甚至大于整个虚拟地址空间的大小。这时需要只映像文件的一个局部,而不是整个文件,造成很大的复杂性。 4.2 目录 4.2.1 层次目录结构 通常一个目录包含很多项,称为目录项。每个目录项代表一个文件。 在打开文件时系统先查找目录,直到找到要打开文件的文件名。然后从目录项中得到文件的属性和

文档评论(0)

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

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

1亿VIP精品文档

相关文档