操作系统教程——Linux实例分析 教学课件 ppt 作者 孟庆昌 第1-8章 第5章 文件系统

上传人:E**** 文档编号:89370909 上传时间:2019-05-24 格式:PPT 页数:152 大小:1.77MB
返回 下载 相关 举报
操作系统教程——Linux实例分析 教学课件 ppt 作者 孟庆昌 第1-8章 第5章 文件系统_第1页
第1页 / 共152页
操作系统教程——Linux实例分析 教学课件 ppt 作者 孟庆昌 第1-8章 第5章 文件系统_第2页
第2页 / 共152页
操作系统教程——Linux实例分析 教学课件 ppt 作者 孟庆昌 第1-8章 第5章 文件系统_第3页
第3页 / 共152页
操作系统教程——Linux实例分析 教学课件 ppt 作者 孟庆昌 第1-8章 第5章 文件系统_第4页
第4页 / 共152页
操作系统教程——Linux实例分析 教学课件 ppt 作者 孟庆昌 第1-8章 第5章 文件系统_第5页
第5页 / 共152页
点击查看更多>>
资源描述

《操作系统教程——Linux实例分析 教学课件 ppt 作者 孟庆昌 第1-8章 第5章 文件系统》由会员分享,可在线阅读,更多相关《操作系统教程——Linux实例分析 教学课件 ppt 作者 孟庆昌 第1-8章 第5章 文件系统(152页珍藏版)》请在金锄头文库上搜索。

1、第5章 文件系统,5.1 文件系统概述 5.2 文件的逻辑组织和物理组织 5.3 目录结构 5.4 文件存储空间的管理 5.5 对文件的主要操作 5.6 文件系统的可靠性 5.7 文件保护 5.8 Linux文件系统 习题,5.1 文件系统概述,5.1.1 文件及其分类 1. 文件 文件是被命名的数据的集合体。 它通常存放在外存上(如磁盘、 磁带)上, 可以作为一个独立单位被存放和实施相应的操作(如打开、 关闭、 读、 写等)。,2. 文件类型 为便于管理和控制文件, 往往把文件分成若干类型。 但由于不同系统对文件的管理方式不同, 因而对文件的分类方法也有很大差异。 下面是常用的几种文件分类方

2、法。 1) 按用途分类 (1) 系统文件: 由操作系统及其他系统程序的信息所组成的文件。,(2) 库文件: 由标准子程序及常用的应用程序组成的文件。 这类文件允许用户使用, 但用户不能修改它们。 (3) 用户文件: 由用户委托保存、 管理的文件, 如源程序、 目标程序、 原始数据、 计算结果等。,2) 按文件中的数据形式分类 (1) 源文件: 是指从终端或输入设备输入的源程序和数据所构成的文件, 它通常是由ASCII码或汉字组成。 (2) 目标文件: 是指源程序经过相应语言的编译程序进行编译后, 但尚未经过连接处理的目标代码所形成的文件。 (3) 可执行文件: 经过编译、 连接之后所形成的可执

3、行目标文件。,3) 按存取权限分类 (1) 只读文件: 仅允许对其进行读操作的文件, 不允许进行写。 (2) 读写文件: 允许文件主和被授权用户对其进行读或写操作的文件。 (3) 可执行文件: 允许被授权用户执行它, 但通常不允许读或写。,4) 按保存时间分类 (1) 临时文件: 用户在一次解题过程中建立的“中间文件”, 它只保存在磁盘上, 当用户退出系统时, 它往往也随之撤消。 (2) 永久文件: 长期保存的有价值的文件, 以备用户经常使用。 它不仅在磁盘(硬盘或软盘)上有副本, 同时在磁带上也有一个可靠的副本。,5) 在UNIX/Linux和MS-DOS系统中, 按文件的内部构造和处理方式

4、分类 (1) 普通文件: 由表示程序、 数据或正文的字符串或0、 1码构成, 内部没有固定的结构。 (2) 目录文件: 由下属文件的目录项构成的文件。 (3) 特别文件: 特指各种外部设备。,图5-1 UNIX文件类型(部分) (a) 可执行文件; (b) 档案文件,3. 文件命名 文件是抽象的机制, 它提供了在磁盘上存放信息和以后从中读出的方法。 普通用户不必了解信息如何存放、 存放在何处、 磁盘如何实际工作等细节。 抽象机制最重要的特性一般就是按名管理对象, 用户对文件也是按名存取的。,表5-1 常见扩展名及其含义,5.1.2 文件系统的功能 现代操作系统中都配置有较完备的文件管理系统,

5、简称文件系统。 所谓文件系统, 就是操作系统中负责操纵和管理文件的一整套设施, 它实现文件的共享和保护, 方便用户“按名存取”。,一般来说, 文件系统应具备以下功能: (1) 文件管理能够按照用户要求创建一个新文件、 删除一个旧文件, 对指定的文件进行打开、 关闭、 读、 写、 执行等操作。 (2) 目录管理为每个文件建立一个文件目录项, 若干文件的目录项构成一个目录文件。,(3) 文件存储空间的管理由文件系统对文件存储空间进行统一管理, 包括对文件存储空间的分配与回收, 并为文件的逻辑结构与它在外存(主要是磁盘)上的物理地址之间建立映射关系。 (4) 文件的共享和保护在系统控制下一个用户可以

6、共享其他用户的文件。 (5) 提供方便的接口为用户提供统一的文件方式, 即用户只要用文件名就可对存储介质上的信息进行相应操作, 从而实现“按名存取”。,5.1.3 文件系统的结构 文件系统本身一般由若干不同层次构成, 图5-2示出了文件系统的层次结构, 其中每一层都利用了低层的特性。,图5-2 文件系统的层次结构,5.1.4 用户对文件的存取方法 1. 顺序存取 对文件的大量操作是读和写。 读文件是读取文件的下面内容并自动地向前推进。 与此相类似, 写文件是把信息附加到文件的末尾并推进到新写成的文件的结尾。 可把这样的文件看成是一条信息带, 顺序地对它进行存取, 如图5-3所示。,图5-3 顺

7、序存取定长记录文件,我们可以用一个读写指针rp指向下一次要读取记录的起始地址, 那么当该记录读出后, 对rp作相应的修改。 例如对定长记录文件, 有 rpi+1=rpi+l 其中, l是记录长度。 对于变长记录文件的顺序存取, 每当一个记录被读、 写之后, 读写指针rp也同样要进行调整, 指向下一个要读取记录的起始地址。 但由于各记录的长度不同, 所以有如下关系: rpi+1=rpi+li 其中, li是第i个记录的长度。 如图5-4所示。,图5-4 顺序存取变长记录文件,2. 随机存取 随机存取也称作直接存取, 它是基于磁盘的文件模式。 对于定长记录文件的随机存取是把一个文件视为若干编上号的

8、块或记录, 每块的大小通常是一样的, 它们被操作系统作为最小的定位单位, 如图5-5所示。 每块大小可以是1个字节、 512个字节、 1024个字节或其他数值, 这取决于系统。,图5-5 随机存取定长记录文件,图5-6 直接存取变长记录文件的索引表结构,5.2 文件的逻辑组织和物理组织,5.2.1 文件的逻辑组织 1. 有结构文件 有结构文件又称作记录式文件, 它在逻辑上可被看成一组连续记录的集合, 即文件是由若干个相关的记录组成, 并且对每个记录编上号码, 依次为记录1、 记录2 记录n。,记录式文件按其记录的长度是否相同又可分为: 定长记录文件和变长记录文件两种。 (1) 定长记录文件:

9、指文件中所有记录的长度都相同。 (2) 变长记录文件: 指文件中各记录的长度不相同。 如姓名、 单位地址、 文章的标题等, 有长有短, 并不完全相同。 在处理之前每个记录的长度是已知的。,2. 无结构文件 无结构文件是指文件内部不再划分记录, 它是由一组相关信息组成的有序字符流, 即流式文件, 其长度直接按字节计算。 如大量的源程序、 可执行程序、 库函数等采用的文件形式是无结构文件形式。,5.2.2 文件的物理组织 1. 连续文件 连续文件(又称作顺序文件)是基于磁带设备的最简单的物理文件结构, 它是把一个逻辑上连续的文件信息存放在连续编号的物理块(或物理记录)中。 例如, 定长记录文件fi

10、le1的长度为2000字节, 存放在连续分块的磁带上, 每块大小设为512字节, 这样它要占用4块, 设首块块号为30。 file1在磁带上的存放形式如图5-7所示。,图5-7 连续文件结构,但连续文件也存在如下缺点: (1) 要求建立文件时就确定它的长度, 依此来分配相应的存储空间, 这往往很难实现。 (2) 它不便于文件的动态扩充。 (3) 可能出现外部碎片, 就是在存储介质上存在很多空闲块, 但它们都不连续, 无法被连续的文件使用, 从而造成浪费。,2. 串连文件 为克服连续文件的缺点, 可把一个逻辑上连续的文件分散存放在不同的物理块中, 这些物理块不要求连续, 也不必规则排列。 为了使

11、系统能找到下一个逻辑块所在的物理块, 可在各物理块中设立一个指针(称作连接字), 它指示该文件的下一个物理块, 如图5-8所示。,图5-8 串连文件的结构,串连文件(又称作链接文件)克服了连续文件的缺点, 但它又带来了新的问题: (1) 一般仅适于对信息的顺序访问, 而不利于对文件的随机存取。 例如, 为了存取逻辑块号2中的信息, 必须从头向后顺次检索, 通过65#块的连接字才能知道所需的物理块号。 (2) 每个物理块上增加一个连接字, 为信息管理添加了麻烦。,3. FAT文件 串连文件的缺点可以通过把连接字放在一个内存表格中的方式加以克服。 这种在内存中的表格就称为文件分配表(FAT, Fi

12、le Allocation Table), 如图5-9所示。,图5-9 FAT表结构,4. 索引文件 索引文件是实现非连续分配的另一种方案: 系统为每个文件建立一个索引表。 其中的表项指出存放该文件的各个物理块号, 而整个索引表由文件说明项指出, 如图5-10所示。,图5-10 索引文件的结构,5. 多重索引文件 为了用户使用方便, 系统一般不应限制文件的大小。 如果文件很大, 那么不仅存放文件信息需要大量盘块, 而且相应的索引表也必然很大。 例如, 若盘块大小为1 KB字节, 那么长度为100 KB字节的文件就需要100个盘块, 索引表至少包含100项; 若文件大小为1000 KB字节, 则

13、相应索引表项要有1000项。设盘块号用4个字节表示, 在上述第二种情况下, 索引表至少占用4000字节(约4 KB字节), 很显然, 在这种情况下把索引表整个放在内存是不合适的, 而且不同文件其大小也不同, 文件在使用过程中很可能需要扩充空间。,单一索引表结构已无法满足灵活性和节省内存的要求, 为此引出多重索引结构(又称多级索引结构)。 在这种结构中采用了间接索引方式, 即由最初索引项中得到某一盘块号, 该块中存放的信息是另一组盘块号; 而后者每一块中又可存放下一组盘块号(或者是文件本身信息), 这样间接几级(通常为13级), 最末尾的盘块中存放的信息一定是文件内容。 例如, UNIX文件系统

14、就采用了多重索引的方式, 如图5-11所示。,图5-11 UNIX的多重索引文件结构示例,5.3 目 录 结 构,5.3.1 文件控制块和文件目录 1. 文件控制块 用户对文件是“按名存取”, 所以用户首先要创建文件, 为它命名。 以后对该文件的读、 写以至最后删除它, 都要用到文件名。 为了便于对文件进行控制和管理, 在文件系统内部, 给每个文件惟一地设置一个文件控制块。 这种数据结构通常由下列信息项组成:,(1) 文件名: 符号文件名, 如file5, mydata, m1.c等。 (2) 文件类型: 指明文件的属性, 是普通文件、 还是目录文件、 特别文件, 是系统文件还是用户文件等。

15、(3) 位置: 指针, 它指向存放该文件的设备和该文件在设备上的位置, 如哪台设备的哪些盘块上。,(4) 大小: 当前文件的大小(以字节、 字或块为单位)和允许的最大值。 (5) 保护信息: 对文件读、 写及执行等操作的控制权限标志。 (6) 使用计数: 表示当前有多少个进程在使用(打开了)该文件。 (7) 时间: 日期和进程标志, 这个信息反映出文件有关创建、 最后修改、 最后使用等情况, 可用于对文件实施保护和监控等。,2. 文件目录 文件目录具有将文件名转换成该文件在外存的物理位置的功能, 就是实现文件名与其存放盘块之间的映射, 这是文件目录所提供的最基本的功能。 在MS-DOS系统中,

16、 一个目录项有32个字节长, 其中包含文件名、 扩展名、 属性、 时间、 日期、 首块号和文件大小。 利用首块号作为查找物理块链接表的索引, 按索引链向下找, 可找到该文件所有的盘块。 图5-12是MS-DOS目录项示意图。,图5-12 MS-DOS目录项示意图,图5-13 UNIX目录项示意图,5.3.2 目录结构的类型 1. 单级目录结构 最简单的目录结构就是单级目录, 例如设备目录就是单级目录。 在这种组织方式下, 全部文件都登记在同一目录中, 如图5-14所示。 这样一种结构在实现上和理解上都很容易。,图5-14 单级目录结构,但是单级目录结构有以下缺点: (1) 查找速度慢。 当系统中存在大量文件或众多用户在使用文件时, 由于每个文件占一个目录项, 这样单级目录中就拥有数目很大的目录项。 (2) 不允许重名。 因为各个文件都在同一目录中管辖, 它们各自的名字应是惟一的。 (3) 不便于共享。 因为各用户对同一文件可能有不同的命名, 而单级目录却要求所有用户用同一个名字来访问同一个文件。,2. 二级目录结构 单级目录的主要缺点是无

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号