第6章-文件系统要点课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第6章-文件系统要点课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 文件系统 要点 课件
- 资源描述:
-
1、第六章 文件管理 信息是计算机系统中的重要资源,操作系统信息是计算机系统中的重要资源,操作系统中的一个重要组成部分,文件系统,负责信中的一个重要组成部分,文件系统,负责信息的组织、存储和访问。文件系统的功能就息的组织、存储和访问。文件系统的功能就是提供高效、快速和方便的信息存储和访问是提供高效、快速和方便的信息存储和访问功能。功能。 文件管理的目的文件管理的目的: (1) 方便的文件访问和控制:以符号名称作为文件方便的文件访问和控制:以符号名称作为文件标识,便于用户使用;标识,便于用户使用; (2) 并发文件访问和控制:在多道程序系统中支持并发文件访问和控制:在多道程序系统中支持对文件的并发访
2、问和控制;对文件的并发访问和控制; (3) 统一的用户接口:在不同设备上提供同样的接统一的用户接口:在不同设备上提供同样的接口,方便用户操作和编程;口,方便用户操作和编程; (4) 多种文件访问权限:在多用户系统中的不同用多种文件访问权限:在多用户系统中的不同用户对同一文件会有不同的访问权限;户对同一文件会有不同的访问权限; (5) 优化性能:存储效率、检索性能、读写性能;优化性能:存储效率、检索性能、读写性能; (6) 差错恢复:能够验证文件的正确性,并具有一差错恢复:能够验证文件的正确性,并具有一定的差错恢复能力;定的差错恢复能力;6.1 6.1 文件和文件系统文件和文件系统 6.1.1
3、6.1.1 文件、记录和数据项文件、记录和数据项 1 1、数据项、数据项 (1 1)基本数据项)基本数据项 :可命名的最小数据单位,:可命名的最小数据单位,原子数据,有数据类型。原子数据,有数据类型。-数据库中的字段。数据库中的字段。如:学号、姓名、年龄等。如:学号、姓名、年龄等。 (2 2)组合数据项:由若干数据项组成,如工)组合数据项:由若干数据项组成,如工资。资。 2 2、记录:一组相关数据项集合,用于描述一、记录:一组相关数据项集合,用于描述一个对象在某方面的属性。主关键字(关键字)个对象在某方面的属性。主关键字(关键字)用于标识一个记录。用于标识一个记录。 3 3、文件、文件 文件:
4、文件:由创建者定义,具有文件名的一组相由创建者定义,具有文件名的一组相关元素的集合。文件名是文件的标识符号。关元素的集合。文件名是文件的标识符号。 有结构文件由若干相关记录组成;无结构文有结构文件由若干相关记录组成;无结构文件被看成是一个字符流。件被看成是一个字符流。 文件包括两部分:文件包括两部分:文件体:文件本身的信息;文件体:文件本身的信息;文件属性:文件存储和管理信息;如:文文件属性:文件存储和管理信息;如:文件名、文件内部标识、文件存储地址、访件名、文件内部标识、文件存储地址、访问权限、访问时间等;问权限、访问时间等; 文件属性:文件属性: (1 1) 文件类型文件类型 (2 2)
5、文件长度文件长度 (3 3) 文件的物理位置文件的物理位置 (4 4) 文件的存取控制文件的存取控制 (5 5) 文件的创建人、创建时间、修文件的创建人、创建时间、修改时间改时间6.1.2 文件类型文件类型 多种分类法:多种分类法: 1 1)用途:系统文件、用户文件、库文件)用途:系统文件、用户文件、库文件 2 2)文件中的数据形式:源文件、目标文件、)文件中的数据形式:源文件、目标文件、可执行代码文件。可执行代码文件。 3 3)存取属性:只执行文件、只读文件、读写)存取属性:只执行文件、只读文件、读写文件文件 4 4)文件逻辑结构:有结构文件(记录、数据)文件逻辑结构:有结构文件(记录、数据
6、项)、无结构文件(流式文件)项)、无结构文件(流式文件) 5 5)文件的存储结构:顺序文件、链接文件、)文件的存储结构:顺序文件、链接文件、索引文件索引文件6.1.3 文件操作 1. 1. 最基本的文件操作最基本的文件操作 (1 1)创建文件:分配外存空间,在文件系统)创建文件:分配外存空间,在文件系统的目录中建立一个目录项。的目录中建立一个目录项。 (2 2)删除文件:在目录中找到要删除文件的)删除文件:在目录中找到要删除文件的目录项并删除,同时回收空间。目录项并删除,同时回收空间。 (3 3)读文件:应用进程调用系统调用,系统)读文件:应用进程调用系统调用,系统查找该文件的目录项,确定外存
7、地址,目录查找该文件的目录项,确定外存地址,目录项中有读写指针。项中有读写指针。 (4 4)写文件:类似读文件。)写文件:类似读文件。 (5 5)截断文件:将目录项中文件的长度属性)截断文件:将目录项中文件的长度属性改为零,其它属性保留。改为零,其它属性保留。 (6 6)设置读写位置:前面的读写操作每次从)设置读写位置:前面的读写操作每次从文件的起始位置读写。本操作用于设置读写文件的起始位置读写。本操作用于设置读写指针,从需要位置开始。即将顺序存取改为指针,从需要位置开始。即将顺序存取改为随机存取。随机存取。 2. 2. 文件的打开和关闭操作文件的打开和关闭操作 打开:系统将指定文件的目录项复
8、制到内存打开:系统将指定文件的目录项复制到内存中打开文件表中为其建立一个表目,并将该中打开文件表中为其建立一个表目,并将该表目的编号(索引号)返回给进程。避免多表目的编号(索引号)返回给进程。避免多次访问外存获取文件属性信息。次访问外存获取文件属性信息。 关闭:将内存中对应的文件表目复制到外存关闭:将内存中对应的文件表目复制到外存目录表中,从内存打开文件表中删除对应的目录表中,从内存打开文件表中删除对应的目录项。目录项。 3. 其它文件操作其它文件操作 以系统调用的形式提供给用户,有:以系统调用的形式提供给用户,有: 1)关于文件属性的操作:改变文件名、改)关于文件属性的操作:改变文件名、改变
9、文件所有者、改变文件的访问权限等。变文件所有者、改变文件的访问权限等。 2)有关目录操作的:创建目录、删除目录)有关目录操作的:创建目录、删除目录等。等。 3)实现文件共享的操作)实现文件共享的操作 例:若一个用户进程通过例:若一个用户进程通过read系统调用读取系统调用读取磁盘文件,则下列关于此过程的叙述正确的磁盘文件,则下列关于此过程的叙述正确的是是 1. 若该文件的数据不在内存,则该进程进入若该文件的数据不在内存,则该进程进入睡眠等待状态睡眠等待状态 2. 请求请求read系统调用会导致系统调用会导致CPU从用户态从用户态切换到核心态。切换到核心态。 3. read系统调用的参数应该包含
10、文件的名称。系统调用的参数应该包含文件的名称。 3是错的,因为要先是错的,因为要先open得到一个文件句柄,得到一个文件句柄,之后有关文件的系统调用都用这个句柄。之后有关文件的系统调用都用这个句柄。6.2 文件逻辑结构 1. 1. 文件的逻辑结构(文件的逻辑结构(File Logical File Logical StructureStructure): : 也称文件的组织(也称文件的组织(File OrganizationFile Organization),),是指从用户观点出发讨论文件组织结构,是是指从用户观点出发讨论文件组织结构,是用户可直接处理的数据及结构,独立于文件用户可直接处理的
11、数据及结构,独立于文件的物理特性。的物理特性。 文件逻辑结构的设计要求文件逻辑结构的设计要求: 访问性能:便于检索;便于修改访问性能:便于检索;便于修改 存储性能:向物理存储转换方便,节省空间存储性能:向物理存储转换方便,节省空间 2 2文件的物理结构:又称文件的存储结构,文件的物理结构:又称文件的存储结构,文件在外存上组织形式,与存储介质的存储文件在外存上组织形式,与存储介质的存储性能有关。性能有关。6.2.1 文件逻辑结构的类型 1 1、有结构文件、有结构文件记录式文件记录式文件 (1 1) 定长记录:寻址简单定长记录:寻址简单 (2 2) 变长记录:变长记录: 数据项数目不同:如论文中的
12、关键词等。数据项数目不同:如论文中的关键词等。 数据项本身长度不定,如病历中的病史。数据项本身长度不定,如病历中的病史。 有结构文件的组织方式:有结构文件的组织方式: (1 1)顺序文件:文件中的记录按照某种顺序排列,)顺序文件:文件中的记录按照某种顺序排列,适合于定长记录文件适合于定长记录文件 (2 2)索引文件:若记录长度可变,则建立一张索)索引文件:若记录长度可变,则建立一张索引表,每个记录一个表项,加快检索。引表,每个记录一个表项,加快检索。 (3 3)索引顺序文件:建立索引表,一组记录一个)索引顺序文件:建立索引表,一组记录一个表项表项 2 2、无结构文件、无结构文件 文件体为字节流
13、,不划分记录,顺序访问,文件体为字节流,不划分记录,顺序访问,每次读写访问可以指定任意数据长度,系统每次读写访问可以指定任意数据长度,系统不对文件进行格式处理,即流式文件。在不对文件进行格式处理,即流式文件。在UNIX系统中,所有文件(有结构或无结构)系统中,所有文件(有结构或无结构)都看成是流式文件。都看成是流式文件。6.2.2 顺序文件 (sequential file) 1 1、逻辑记录的排序、逻辑记录的排序 文件中的记录可按照任意顺序排序,分两种文件中的记录可按照任意顺序排序,分两种情况:情况: (1 1)串结构:记录顺序与关键字无关,存入)串结构:记录顺序与关键字无关,存入时间决定顺
14、序时间决定顺序 (2 2)顺序结构:记录按关键字排序,检索效)顺序结构:记录按关键字排序,检索效率高。率高。 顺序结构比串结构有更高的检索效率。顺序结构比串结构有更高的检索效率。 2 2、对顺序文件的读写:、对顺序文件的读写: (1 1) 定长记录:设置读或写指针每次读定长记录:设置读或写指针每次读/ /写写一个记录后一个记录后 ptrptr = = ptr+Lptr+L 使指针指向下一使指针指向下一个记录。个记录。 (2 2)变长记录:设置读或写指针每次读)变长记录:设置读或写指针每次读/ /写写一个记录后一个记录后 ptrptr = = ptr+Lptr+Li i 使指针指向下一使指针指向
15、下一个记录。个记录。 3 3、顺序文件的优缺点、顺序文件的优缺点 优点:批量处理数据,快!介质:磁带。优点:批量处理数据,快!介质:磁带。 缺点:对单个记录处理困难,插入或删除尤缺点:对单个记录处理困难,插入或删除尤其如此。其如此。6.2.3 索引文件(indexed file) 记录大小不必相同,不必排序,存放在主文记录大小不必相同,不必排序,存放在主文件件( (primary file)primary file)中。另外建立一张索引表,中。另外建立一张索引表,每个记录在表中对应一个索引项,索引项按每个记录在表中对应一个索引项,索引项按照记录中的某个关键字域排序。对同一主文照记录中的某个关键
16、字域排序。对同一主文件,可以针对不同的关键字域建立多个索引件,可以针对不同的关键字域建立多个索引表(注意:和多级索引并不相同)。索引文表(注意:和多级索引并不相同)。索引文件的记录项通常较小,查找速度快,便于随件的记录项通常较小,查找速度快,便于随机访问机访问( (random access)random access)。索引号索引号长度长度指针指针0m01m1.R0R1Ri索引表索引表逻辑文件逻辑文件6.2.4 6.2.4 索引顺序文件索引顺序文件 (indexed-sequential file) 是顺序文件和索引文件结合的产物。是顺序文件和索引文件结合的产物。 将顺序文件中的所有记录分为
17、若干组;为顺将顺序文件中的所有记录分为若干组;为顺序文件建立一张索引表,每组的第一个记录序文件建立一张索引表,每组的第一个记录在索引表中有对应表项。在索引表中有对应表项。 查找任意记录时,先据关键字查索引表(此查找任意记录时,先据关键字查索引表(此时可采用各种查找算法),找到所在组的第时可采用各种查找算法),找到所在组的第一个记录,之后顺序查找该组。一个记录,之后顺序查找该组。关键字逻辑地址姓名其它属性ABZAn BingAn KangAn QingBao RongBi JingBon Long索引文件顺序文件6.2.5 6.2.5 直接文件和哈希文件直接文件和哈希文件 ( (hashed f
18、ilehashed file) 1. 直接文件直接文件 前面几种文件结构对记录进行存取时,都须前面几种文件结构对记录进行存取时,都须利用给定的记录键值,先对线性表或链表进利用给定的记录键值,先对线性表或链表进行检索,以找到指定记录的物理地址。行检索,以找到指定记录的物理地址。 直接文件是根据记录的键值直接就可获得记直接文件是根据记录的键值直接就可获得记录的物理地址。录的物理地址。 组织直接文件的关键在于实现从键值到物理组织直接文件的关键在于实现从键值到物理地址的转换。地址的转换。 2. 哈希文件哈希文件 哈希文件是应用最广泛的一种直接文件。哈希文件是应用最广泛的一种直接文件。 记录位置由哈希函
19、数确定。检索时给出记录记录位置由哈希函数确定。检索时给出记录键值,通过哈希函数计算出该记录在文件中键值,通过哈希函数计算出该记录在文件中的相对位置,通常是一个目录表中的表项,的相对位置,通常是一个目录表中的表项,该表目的内容指向相应记录所在的物理块。该表目的内容指向相应记录所在的物理块。 访问速度最快,但在主文件中有空闲空间浪访问速度最快,但在主文件中有空闲空间浪费。费。6.3 外存分配方式(文件实现) 目的:目的: (1)提高存储空间的利用率)提高存储空间的利用率 (2)提高文件的访问速度)提高文件的访问速度6.3.1 连续分配 每个文件分配一组相邻接的盘块,也称物理每个文件分配一组相邻接的
20、盘块,也称物理顺序文件。顺序文件。 主要问题:随着使用,磁盘碎片增多,性能主要问题:随着使用,磁盘碎片增多,性能下降,需要磁盘整理。下降,需要磁盘整理。 优点:顺序访问速度快,定位容易,只需记优点:顺序访问速度快,定位容易,只需记录第一个簇的位置。可以通过紧缩录第一个簇的位置。可以通过紧缩(compact)将外存空闲空间合并成连续的区将外存空闲空间合并成连续的区域。域。 缺点:需要连续的空间,当文件长度变化难缺点:需要连续的空间,当文件长度变化难于处理,即必须事先知道文件的长度。于处理,即必须事先知道文件的长度。连续分配连续分配6.3.2 链接分配 1、隐式链接、隐式链接 分配给文件的盘块不连
21、续,在每个簇中有指分配给文件的盘块不连续,在每个簇中有指向下一个簇的指针。目录中只存放第一和最向下一个簇的指针。目录中只存放第一和最后一块的簇号(盘块号)。后一块的簇号(盘块号)。 解决顺序文件的离散存储的问题。解决顺序文件的离散存储的问题。 链接分配只适合于顺序访问,随机访问效率链接分配只适合于顺序访问,随机访问效率差,可靠性差。差,可靠性差。链接分配链接分配 2、显示链接、显示链接 指针单独存放在一张表中,称文件分配表指针单独存放在一张表中,称文件分配表(FAT),),与文件对应的目录项中存放文件与文件对应的目录项中存放文件首块的地址,表中的序号与物理块号对应。首块的地址,表中的序号与物理
22、块号对应。文件分配表文件分配表 文件存储单位:簇(文件存储单位:簇(cluster)簇又称为部簇又称为部分分(portion) 文件的存储空间通常由多个独立的簇组成,而文件的存储空间通常由多个独立的簇组成,而每个簇包含若干个连续的外存存储单位(如扇每个簇包含若干个连续的外存存储单位(如扇区区sector),),如何确定每个簇的大小?如何确定每个簇的大小? (1)簇的大小)簇的大小 两个极端:大到能容纳整个文件,小到一两个极端:大到能容纳整个文件,小到一个外存存储块(一个扇区)个外存存储块(一个扇区) 簇较大:提高簇较大:提高I/O访问性能,减小管理开销访问性能,减小管理开销 簇较小:簇内的碎片
23、浪费较小,特别是大量簇较小:簇内的碎片浪费较小,特别是大量小文件时有利。小文件时有利。簇的大小簇的大小 (2) 主要方法:两种主要方法:两种簇大小可变,其上限较大:簇大小可变,其上限较大:I/O访问性能访问性能较好。但簇大小可变,文件存储空间的管较好。但簇大小可变,文件存储空间的管理困难,因为要指明每个簇的尺寸。理困难,因为要指明每个簇的尺寸。簇大小固定,较小:文件存储空间使用灵簇大小固定,较小:文件存储空间使用灵活,但活,但I/O访问性能下降,文件管理所需访问性能下降,文件管理所需空间开销较大空间开销较大6.3.3 索引分配 1、单级索引(直接索引)、单级索引(直接索引) 为每个文件分配一个
24、索引块。记录分配给该为每个文件分配一个索引块。记录分配给该文件的所有盘块号,文件目录项中记录该索文件的所有盘块号,文件目录项中记录该索引块的盘块号。引块的盘块号。 问题:浪费外存空间,对小文件尤其如此。问题:浪费外存空间,对小文件尤其如此。索引分配索引分配 例:某文件系统的最大容量为例:某文件系统的最大容量为4TB,以磁盘,以磁盘块为基本分配单位,盘块大小为块为基本分配单位,盘块大小为1KB。FCB包含一个包含一个512B的索引表区。的索引表区。 (1)假设索引表区采用直接索引,索引表)假设索引表区采用直接索引,索引表区存放文件占有的磁盘块号。索引表项中块区存放文件占有的磁盘块号。索引表项中块
25、号最少占用多少字节?可支持的单个文件的号最少占用多少字节?可支持的单个文件的最大长度是多少字节?最大长度是多少字节? 磁盘最多盘块数:磁盘最多盘块数:4TB / 1KB =2 32 所以需要所以需要4字节存放盘块号。字节存放盘块号。 文件最大长度文件最大长度 512/4 1KB 128KB (2) 假设索引表采用如下结构:第假设索引表采用如下结构:第07字节字节采用采用格式表示文件创建格式表示文件创建时预分配的连续存储空间,其中起始块号占时预分配的连续存储空间,其中起始块号占4B,块数占,块数占2B;剩余;剩余504B采用直接索引结采用直接索引结构,一个索引项占构,一个索引项占6B,则可支持的
展开阅读全文