版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第七章第七章 文件管理文件管理 赵卓赵卓 2 要 求 1 1、了解文件系统的任务;、了解文件系统的任务; 2 2、了解外部存储器的工作方式、特点和、了解外部存储器的工作方式、特点和 基本抽象;基本抽象; 3 3、理解文件的分类、命名、存储、组织、理解文件的分类、命名、存储、组织、 存取等概念;存取等概念; 4 4、掌握空闲外存块的管理方法和外存的、掌握空闲外存块的管理方法和外存的 分配方法;分配方法; 5 5、掌握文件的控制块和物理结构;、掌握文件的控制块和物理结构; 6 6、掌握文件的逻辑结构;、掌握文件的逻辑结构; 3 要 求 7 7、掌握文件的目录结构和目录操作;、掌握文件的目录结构和目
2、录操作; 8 8、掌握文件的存取方法和基本的文件操作;、掌握文件的存取方法和基本的文件操作; 9 9、了解文件的共享与保护方式;、了解文件的共享与保护方式; 1010、理解文件系统的管理结构和基本的管理操、理解文件系统的管理结构和基本的管理操 作;作; 1111、了解文件系统的恢复机制和方法;、了解文件系统的恢复机制和方法; 1212、理解虚拟文件系统的概念、意义和基本的、理解虚拟文件系统的概念、意义和基本的 实现方法。实现方法。 4 文件系统的任务 操作系统的运行离不开外存的支持:操作系统的运行离不开外存的支持: n操作系统内核、驱动程序、配置信息、应用程操作系统内核、驱动程序、配置信息、应
3、用程 序等都驻留在外存。序等都驻留在外存。 进程的运行需要外存的支持:进程的运行需要外存的支持: n进程的程序、数据等驻留在外存,在运行的过进程的程序、数据等驻留在外存,在运行的过 程中,需要从外存加载到内存。程中,需要从外存加载到内存。 n进程的输出结果需要存储在外存。进程的输出结果需要存储在外存。 5 内存管理离不开外存的支持:内存管理离不开外存的支持: n 外存是内存的仓库,内存管理程序在内存和外存外存是内存的仓库,内存管理程序在内存和外存 (文件或交换设备)之间交换数据,从而创造出虚(文件或交换设备)之间交换数据,从而创造出虚 拟内存。拟内存。 外存是操作系统管理的重要资源外存是操作系
4、统管理的重要资源。 文件系统的任务 6 文件系统的任务 在系统的运行过程中,需要频繁地访问外存:在系统的运行过程中,需要频繁地访问外存: n加载操作系统和驱动程序加载操作系统和驱动程序 n加载应用程序加载应用程序 n读入读入/ /写出数据写出数据 n换出换出/ /换入进程换入进程 由于外存的访问速度远低于内存,因而外存会影由于外存的访问速度远低于内存,因而外存会影 响系统的性能。如果管理不好,外存会成为系统的瓶响系统的性能。如果管理不好,外存会成为系统的瓶 颈。颈。 应如何管理外存呢?应如何管理外存呢? 外存是存储数据的外存是存储数据的仓库仓库,先考察仓库的管理。,先考察仓库的管理。 7 文件
5、系统的任务 仓库用来存放货物。仓库用来存放货物。 共用的、开放式的仓库可以出租给用户,让用户共用的、开放式的仓库可以出租给用户,让用户 存放货物。外存更像一个共用的仓库。存放货物。外存更像一个共用的仓库。 下面考虑仓库管理中可能遇到的问题。下面考虑仓库管理中可能遇到的问题。 问题问题1 1:以什么为单位出租(管理)仓库?以什么为单位出租(管理)仓库? 1 1、平方米。、平方米。 2 2、区域,用线将仓库划分成区域,并编上号。、区域,用线将仓库划分成区域,并编上号。 3 3、房间,将仓库隔成小房间,并编上号。、房间,将仓库隔成小房间,并编上号。 仓库的出租或管理单位称为仓位,可能是划分好仓库的出
6、租或管理单位称为仓位,可能是划分好 的区域,也可能是隔开的小房间,或柜子。的区域,也可能是隔开的小房间,或柜子。 8 文件系统的任务 问题问题2 2:如何记录各仓位的使用情况?如何记录各仓位的使用情况? 要管理各仓位的出租,必须记录各仓位的使用情要管理各仓位的出租,必须记录各仓位的使用情 况,包括:况,包括: 1 1、登记未用的仓位。、登记未用的仓位。 由于各仓位都有编号,所以可以通过仓位登记表由于各仓位都有编号,所以可以通过仓位登记表 (数组或位图)等记录各仓位的使用情况(已用、未(数组或位图)等记录各仓位的使用情况(已用、未 用)。用)。 当有用户要租用仓位时,查看仓位登记表就可以当有用户
7、要租用仓位时,查看仓位登记表就可以 知道哪些仓位可用。知道哪些仓位可用。 当然,用户希望自己的货物尽可能地集中存放,当然,用户希望自己的货物尽可能地集中存放, 因此还需要知道哪些空闲仓位是相临的。因此还需要知道哪些空闲仓位是相临的。 9 2 2、登记已用的仓位。、登记已用的仓位。 简单的做法是只记录哪些用户租用了哪些仓位。简单的做法是只记录哪些用户租用了哪些仓位。 由用户自己记录货物的存放情况,或者说仓位的使用由用户自己记录货物的存放情况,或者说仓位的使用 情况。用户自己负责货物的存、取、查找等工作。情况。用户自己负责货物的存、取、查找等工作。 如果用户的货物多而且杂的话,他可以采用如下如果用
8、户的货物多而且杂的话,他可以采用如下 方式登记货物的存放情况:方式登记货物的存放情况: (1 1)在各仓位上贴上标签,记录货物的名称、数)在各仓位上贴上标签,记录货物的名称、数 量、序号等。量、序号等。 (2 2)自己准备一个账本,登记各类货物的名称、)自己准备一个账本,登记各类货物的名称、 数量、存放位置等。数量、存放位置等。 文件系统的任务 10 文件系统的任务 从仓库管理的角度说,上述方法简单。从仓库管理的角度说,上述方法简单。 但对用户来说,按上述方式管理的仓库不是好仓但对用户来说,按上述方式管理的仓库不是好仓 库,至少是服务质量较差、不够安全的仓库,因为他库,至少是服务质量较差、不够
9、安全的仓库,因为他 需要用户做太多的工作。需要用户做太多的工作。 更好的办法是把登记的工作交给仓库管理员,并更好的办法是把登记的工作交给仓库管理员,并 由仓库的工作人员负责货物的存、取、查找等工作。由仓库的工作人员负责货物的存、取、查找等工作。 存货时,用户只需要将包装好、贴好标签的货物存货时,用户只需要将包装好、贴好标签的货物 交给仓库管理员,仓库管理员会为其分配仓位、登记交给仓库管理员,仓库管理员会为其分配仓位、登记 位置等,并安排工作人员将其货物存放到位。位置等,并安排工作人员将其货物存放到位。 取货时,用户只需提供证明材料和货物名称、数取货时,用户只需提供证明材料和货物名称、数 量等,
10、仓库管理员就会为其找到并取出货物。量等,仓库管理员就会为其找到并取出货物。 11 文件系统的任务 由于用户是按照用户名和货物名向仓库管理员提由于用户是按照用户名和货物名向仓库管理员提 出存、取、查找请求的,所以,仓库管理员需要根据出存、取、查找请求的,所以,仓库管理员需要根据 用户名、货物名等建立登记表,包括:用户名、货物名等建立登记表,包括: (1 1)用户名、货物名。)用户名、货物名。 (2 2)货物类型、数量。)货物类型、数量。 (3 3)货物存放的位置、顺序。)货物存放的位置、顺序。 (4 4)货物存放的日期等。)货物存放的日期等。 对用户来说,这种管理方式更先进,服务质量更对用户来说
11、,这种管理方式更先进,服务质量更 高。此时,仓库就是已命名的货物的存放地,他不再高。此时,仓库就是已命名的货物的存放地,他不再 需要记录货物的存放位置,也不再需要自己搬运货物。需要记录货物的存放位置,也不再需要自己搬运货物。 12 文件系统的任务 如果用户和货物太多的话,利用简单账本的简单如果用户和货物太多的话,利用简单账本的简单 登记就会影响管理的效率,甚至会出现问题。如:登记就会影响管理的效率,甚至会出现问题。如: 需要翻遍整个账本才能找到需要的货物登记。需要翻遍整个账本才能找到需要的货物登记。 经常有重名的货物,甚至一个用户的货物也可能经常有重名的货物,甚至一个用户的货物也可能 重名,这
12、会造成存取的混乱。重名,这会造成存取的混乱。 一种货物可能有多个名称。一种货物可能有多个名称。 一批货物同时属于多个用户等等。一批货物同时属于多个用户等等。 为了解决上述问题,需要将账本为了解决上述问题,需要将账本分类或分级组织分类或分级组织。 如在一本账上按照货物编号登记货物的类型、数量、如在一本账上按照货物编号登记货物的类型、数量、 存放位置等,在另外的账上登记用户名、货物名和货存放位置等,在另外的账上登记用户名、货物名和货 物编号等。物编号等。 13 问题问题3 3:如何存取货物?如何存取货物? 如果由管理员登记货物类型、数量、位置等信息,如果由管理员登记货物类型、数量、位置等信息, 那
13、么用户就不能直接地存取货物。那么用户就不能直接地存取货物。 用户向管理员提出的请求包括:货物名、编号、用户向管理员提出的请求包括:货物名、编号、 数量、存还是取。数量、存还是取。 管理员查阅账本,确定货物所在的仓位,通知工管理员查阅账本,确定货物所在的仓位,通知工 作人员将整个仓位的货物取出,或将货物存入一个仓作人员将整个仓位的货物取出,或将货物存入一个仓 位。位。 货物的存取是以仓位为单位的。货物的存取是以仓位为单位的。 如果用户现有的仓位不够用,还应为其追加新的如果用户现有的仓位不够用,还应为其追加新的 仓位;如果仓位出现空闲,还应回收其空闲仓位。仓位;如果仓位出现空闲,还应回收其空闲仓位
14、。 文件系统的任务 14 问题问题4 4:如何保护货物的安全?如何保护货物的安全? 即如何保护货物不被毁坏、不被盗窃?即如何保护货物不被毁坏、不被盗窃? 1 1、只有管理员知道货物的存放位置。、只有管理员知道货物的存放位置。 2 2、只有工作人员可以接触仓库中的货物。、只有工作人员可以接触仓库中的货物。 3 3、为每一件或一类货物建立一套使用档案,规定、为每一件或一类货物建立一套使用档案,规定 什么人可以以何种方式存取货物。什么人可以以何种方式存取货物。 4 4、用户对货物的存取需要履行严格的手续,未通、用户对货物的存取需要履行严格的手续,未通 过审查的用户不能存取货物,甚至不能查询货物的信过
15、审查的用户不能存取货物,甚至不能查询货物的信 息。息。 文件系统的任务 15 问题问题5 5:如何保证货物的可靠性?如何保证货物的可靠性? 用户存放在仓库中的货物应该是可靠的,应该能用户存放在仓库中的货物应该是可靠的,应该能 够原样取出,不能有损坏、不能有丢失,甚至不能有够原样取出,不能有损坏、不能有丢失,甚至不能有 腐烂、变质等现象。腐烂、变质等现象。 保证货物的可靠性比较困难。保证货物的可靠性比较困难。 如果一个仓库能够提供高的可靠性,那么它的服如果一个仓库能够提供高的可靠性,那么它的服 务质量也是高的,它也会获得更高的信誉,争取到更务质量也是高的,它也会获得更高的信誉,争取到更 多的用户
16、。多的用户。 文件系统的任务 16 总之:总之: 1 1、对仓库管理来说,将仓库看成一组仓位是方便、对仓库管理来说,将仓库看成一组仓位是方便 的,有利于仓位的分配和回收。的,有利于仓位的分配和回收。 2 2、除了仓位的分配和回收以外,仓库还应为用户、除了仓位的分配和回收以外,仓库还应为用户 提供更多的服务,如登记、货物的搬运、安全、可靠提供更多的服务,如登记、货物的搬运、安全、可靠 性等。性等。 3 3、对用户来说,将仓库看成是货物的存放地是方、对用户来说,将仓库看成是货物的存放地是方 便的。用户只需要知道自己在其中存放了什么货物,便的。用户只需要知道自己在其中存放了什么货物, 不需要关心货物
17、存放的位置,也不需要过问仓库的安不需要关心货物存放的位置,也不需要过问仓库的安 全、保卫措施。当用户需要时,仓库会将货物原样交全、保卫措施。当用户需要时,仓库会将货物原样交 还给他。还给他。 文件系统的任务 17 对外存管理来说,在外存仓库中存放的货物就是文对外存管理来说,在外存仓库中存放的货物就是文 件。件。文件是被命名的数据的集合体。文件是被命名的数据的集合体。 外存仓库的管理员就是外存仓库的管理员就是文件系统文件系统,它负责文件的管,它负责文件的管 理,包括:登记、存(写)、取(读)、查找等,当然理,包括:登记、存(写)、取(读)、查找等,当然 还包括存储块(仓位)的分配与回收。还包括存
18、储块(仓位)的分配与回收。 针对某一个文件,文件系统需要登记的信息包括:针对某一个文件,文件系统需要登记的信息包括: (1 1)文件名、文件属主。)文件名、文件属主。 (2 2)文件的类型、大小。)文件的类型、大小。 (3 3)文件各块在仓库中的存放位置。)文件各块在仓库中的存放位置。 (4 4)文件的创建日期、修改日期、存取日期等。)文件的创建日期、修改日期、存取日期等。 文件登记表的分级组织形式就是文件登记表的分级组织形式就是文件目录文件目录。 文件系统的任务 18 用户或进程把外存看成是文件的存储仓库。它们用户或进程把外存看成是文件的存储仓库。它们 对外存的需求如下对外存的需求如下: 1
19、 1、管理好文件,能存入、能找到、能取出。、管理好文件,能存入、能找到、能取出。 2 2、保证文件的可靠性、安全性。、保证文件的可靠性、安全性。 3 3、允许有条件地共享文件。、允许有条件地共享文件。 操作系统内核对外存管理的需求是:操作系统内核对外存管理的需求是: 1 1、满足用户或进程对外存的需求,为用户或进程、满足用户或进程对外存的需求,为用户或进程 提供服务。提供服务。 2 2、提高外存利用率,减少浪费。、提高外存利用率,减少浪费。 3 3、提高外存的管理效率,提供快速的分配、回收、提高外存的管理效率,提供快速的分配、回收、 存取外存的手段。存取外存的手段。 文件系统的任务 19 外存
20、管理的任务包括:外存管理的任务包括: 1 1、外存资源的分配与回收、外存资源的分配与回收 2 2、外存中数据的组织与管理、外存中数据的组织与管理 3 3、外存中数据的查找与读写操作、外存中数据的查找与读写操作 4 4、外存中数据的保护与共享、外存中数据的保护与共享 5 5、外存中数据的可靠性保证、外存中数据的可靠性保证 外存中数据的按照文件方式组织,文件是外存管外存中数据的按照文件方式组织,文件是外存管 理的基本单位,因而,外存管理又称为文件系统。理的基本单位,因而,外存管理又称为文件系统。 上述外存管理的任务也就是上述外存管理的任务也就是文件系统的任务文件系统的任务。 文件系统的任务 20
21、7.1.1文件的概念 n在现代计算机系统中,要用到大量的程序和数据,由于计在现代计算机系统中,要用到大量的程序和数据,由于计 算机算机内存容量有限,并且内存中保存的信息在断电以后将内存容量有限,并且内存中保存的信息在断电以后将 丢失丢失 n因此,人们总是把自己的程序和数据以文件的形式存放在因此,人们总是把自己的程序和数据以文件的形式存放在 大容量的外存上,需要时再把它们装入内存,这样就需要大容量的外存上,需要时再把它们装入内存,这样就需要 操作系统来对外存中的文件进行管理,以方便用户的使用操作系统来对外存中的文件进行管理,以方便用户的使用 n为此,现代操作系统都提供为此,现代操作系统都提供文件
22、管理的功能文件管理的功能,以保证文件,以保证文件 系统的安全性,提高系统资源的利用率。系统的安全性,提高系统资源的利用率。 21 7.1.1 文件及其分类文件及其分类 1.文件的定义文件的定义 文件是计算机系统中信息存放的一种组织形式,文件是计算机系统中信息存放的一种组织形式, 目前尚无严格的定义,下面给出两种有代表性目前尚无严格的定义,下面给出两种有代表性 的解释:的解释: n(1)文件是具有标识符的相关字符流的集合。)文件是具有标识符的相关字符流的集合。 n(2)文件是具有标识符的相关记录(一个有)文件是具有标识符的相关记录(一个有 意义的信息单位)的集合。意义的信息单位)的集合。 22
23、7.1.1 文件及其分类文件及其分类 这两种解释定义了两种文件形式:前者说明文这两种解释定义了两种文件形式:前者说明文 件是件是由字节组成由字节组成,这是一种无结构的文件,或,这是一种无结构的文件,或 称称流式文件流式文件。 无结构文件由于采用字符流方式,与源程序、无结构文件由于采用字符流方式,与源程序、 目标代码等在形式上是一致的,因此,该方式目标代码等在形式上是一致的,因此,该方式 适用于源程序、目标代码等文件。适用于源程序、目标代码等文件。 UNIX操作系统、操作系统、MS-DOS系统均采用这种文系统均采用这种文 件形式。件形式。 23 7.1.1 文件及其分类文件及其分类 后者说明文件
24、是后者说明文件是由记录组成由记录组成。而记录则是由一。而记录则是由一 组相关信息项组成。组相关信息项组成。 例如每个学生的登记表可视为一个记录,它包例如每个学生的登记表可视为一个记录,它包 括学生姓名,出生年月,性别,籍贯等信息项。括学生姓名,出生年月,性别,籍贯等信息项。 所有学生登记表组成一个学生文件。所有学生登记表组成一个学生文件。 记录式文件主要用于信息管理。记录式文件主要用于信息管理。 在现代计算机操作系统中,为方便用户,在现代计算机操作系统中,为方便用户,把设把设 备也作为文件来统一管理备也作为文件来统一管理,从某种意义上说已,从某种意义上说已 拓宽了文件的含义。拓宽了文件的含义。
25、 24 2.文件命名 n 一般情况下,一个文件是一般情况下,一个文件是一组逻辑一组逻辑上具有完上具有完 整意义的信息集合,并整意义的信息集合,并赋以一个文件名赋以一个文件名。 n 文件名由用户给定,它是由字母或数字组成文件名由用户给定,它是由字母或数字组成 的一个字符串,用来标识文件的一个字符串,用来标识文件。 n 文件名是文件存在的标识文件名是文件存在的标识,操作系统根据文,操作系统根据文 件名来对其进行控制和管理。件名来对其进行控制和管理。 25 2.文件命名 n 各个操作系统的文件命名规则略有不同,即各个操作系统的文件命名规则略有不同,即 文件名的格式和长度因系统而异。文件名的格式和长度
26、因系统而异。 n 一般来说,文件名由一般来说,文件名由文件名文件名和和扩展名扩展名两部分两部分 组成,中间用组成,中间用“. ”. ”隔开。隔开。 n 它们都是字母或数字组成的字母数字串。它们都是字母或数字组成的字母数字串。扩扩 展名也称为文件后缀,利用扩展名可以区分展名也称为文件后缀,利用扩展名可以区分 文件的属性。文件的属性。 26 DOS、WINDOWS系统中文件名 DOS、WINDOWS系统中文件名格式: 文件名 . 文件扩展名 文件名是一个不大于8个字符的字符串,但 WINDOWS系统中允许超长文件名,最多可有 256个字符,不区分英文字母的大小写。 27 7.1.2 文件的分类文件
27、的分类 (1)以文件的)以文件的用途分类用途分类 系统文件:系统文件:由操作系统及其他系统程序和数据组成的由操作系统及其他系统程序和数据组成的 文件。这种文件不对用户开放,仅供系统使用,用户文件。这种文件不对用户开放,仅供系统使用,用户 只能通过操作系统只能通过操作系统提供的系统调用提供的系统调用来使用它们。来使用它们。 库文件:库文件:是指系统为用户提供的各种标准函数,标准是指系统为用户提供的各种标准函数,标准 过程和实用程序等。用户只能使用这些文件,而无权过程和实用程序等。用户只能使用这些文件,而无权 对其进行修改。对其进行修改。 用户文件:用户文件:由用户的信息组成的文件,如源程序文件,
28、由用户的信息组成的文件,如源程序文件, 数据文件等。这种文件的使用和修改权均属于用户。数据文件等。这种文件的使用和修改权均属于用户。 28 7.1.2文件的分类文件的分类 (2)按文件的操作保护分类)按文件的操作保护分类 n只读文件:只读文件: 只允许进行读操作,不能进行只允许进行读操作,不能进行 写操作的文件。写操作的文件。 n读写文件:读写文件: 允许文件主和授权用户对其进允许文件主和授权用户对其进 行读或写操作的文件。行读或写操作的文件。 n只执行文件:只执行文件:该类文件只允许授权的用户调该类文件只允许授权的用户调 用执行,而不允许其修改或读出文件的内容。用执行,而不允许其修改或读出文
29、件的内容。 29 7.1.2文件的分类文件的分类 (3)按文件的性质分类)按文件的性质分类 n普通文件:普通文件: 指一般的用户文件和系统文件。指一般的用户文件和系统文件。 n目录文件:目录文件: 管理和实现文件系统的文件目管理和实现文件系统的文件目 录项组成的系统文件,对目录文件可以进行录项组成的系统文件,对目录文件可以进行 与普通文件一样的各种文件操作。与普通文件一样的各种文件操作。 n特别文件:特别文件: 有的系统把设备作为文件统一有的系统把设备作为文件统一 管理和使用,并为区别起见,管理和使用,并为区别起见,把设备称为特把设备称为特 别文件别文件。例如:。例如:unix/linux 3
30、0 7.1.4 文件的访问方式文件的访问方式 1.顺序存取:后一次存取总是在前次存取的基 础上进行的。每次存取不必给出存取开始的位 置。 2.直接存取(也称之为随机存取) :用户以任 意次序请求某个记录。随机存取时要指出起始 存取位置(例如记录号、字符序号)。 31 3.按键存取按键存取 按键存取法,本质上也是直接存取 它不是根据记录编号或地址来存取的,而是根 据文件中各记录内容(某个关键字段)进行存 取的。 这种方法通常涉及到创建文件索引。 索引,如同书的索引,包括各个块的指针。为 了查找文件中的记录,首先搜索索引,再根据 指针直接访问文件,以查找所需要的记录。 32 3.其他访问方式其他访
31、问方式-索引方式索引方式 PCS Index 123456 i 234567 k 667788 j Index=j Index=i Index=k 33 7.1.3 文件系统及其功能 文件系统是操作系统中负责存取和管理信息的 模块,它用统一的方式管理用户和对系统信息 的存储、检索、更新、共享和保护,并为用户 提供一整套方便有效的文件使用和操作方法。 它由管理文件所需的数据结构(如文件控制块 及存储分配表等)和相应的管理软件以及访问 文件的一组操作组成。 34 文件系统的功能 1.使用户可执行创建、修改及删除读写文件 的命令。 2.使用户在系统控制下共享其他用户的文件, 以便用户可共享其它人的工
32、作成果。 3.使用户能以合适的方式构造其他文件 4.使用户能使用在文件间进行数据传输的命令 35 文件系统的功能 5.为了实现按名存取,需要有一个用户可见 的文件逻辑结构,用户按照文件逻辑结构所 给定的方式进行信息的存取和加工。这种逻 辑结构是独立于物理存储设备的。 6.为了防止意外事故,文件系统具有转储和 恢复文件的能力 7.能提供可靠的保护和保密措施 36 Widows的主流文件系统 FAT(File Allocation Table)是“文件分配表”的 意 思。对我们来说,它的意义在于对硬盘分区 的管理。 FAT16、FAT32、NTFS是目前最常见的三种文 件系统。 37 其它文件系统
33、 FAT12:是IBM第一台个人电脑中的MS-DOS 1.0使用的 文件系统,主要用于软盘。这种系统限制分区的容量 最大为16MB但这根本算不上问题,因为软盘容量 从来没有达到16MB。 ISO9660:CD-ROM的文件系统,不过现在已经延伸出 很多新的文件系统,对它的一些缺点进行了弥补,如 Juliet等。 UDF:可读写光盘的文件系统。 Mac HFS:苹果电脑的文件系统,对大容量磁盘有比 较好的支持。 38 7.2 文件的结构与组织 通常,用户在使用文件时,只关心文件的逻辑 结构。从用户观点观察到的文件组织形式主要 有两类: 一类是有结构的文件 另一类是无结构的流式文件 39 (1)
34、逻辑记录逻辑记录(结构结构) 逻辑记录是文件中按信息在逻辑上的独立含义来划 分的信息单位。 逻辑记录是对文件进行存取操作的基本单位。 (2) 物理记录物理记录(结构结构) 在存储介质上,由连续信息所组成的一个区域称为 块,也叫物理记录。 (3) 逻辑记录与物理记录的区别与关系逻辑记录与物理记录的区别与关系 一个是逻辑的概念,一个是物理的概念 逻辑记录最终在存放到物理记录上上 文件的两种结构:文件的两种结构: 40 文件的逻辑结构文件的逻辑结构 1. 记录式文件记录式文件 记录式文件是一种有结构的文件。 2. 流式文件流式文件 流式文件是相关的有序字符的集合。是无结构的。 流式文件是按信息的个数
35、或以特殊字符为界进行存取 的。 41 1.记录式文件 每个记录由彼此相关的域构成。记录可按顺序 编号为记录1,记录2,记录n。如果文件 中所有记录的长度都相同,则这种文件为定长 记录文件。 例如:学生登记表文件 xsdjb.dbf 姓名 学号 籍贯 通信地址 邮政编码 李铭 925678 武昌 武昌关山街125号 430074 司马乐 925679 北京 北京海军路88号 100034 42 1.记录式文件记录式文件 记录式文件按照记录长度是否相同,又可分为记录式文件按照记录长度是否相同,又可分为 定长记录文件和不定长记录定长记录文件和不定长记录文件两种。文件两种。 (1)定长记录:定长记录:
36、文件中所有记录的长度相等文件中所有记录的长度相等 。 (2)变长记录:变长记录:文件中记录的长度不相等。文件中记录的长度不相等。 定长记录文件的长度 = 记录个数记录长度。 变长记录文件的长度为各记录长度之和。 43 记录式文件记录式文件 44 2.无结构的文件无结构的文件 无结构文件无结构文件是指文件内部不再划分记录,是由是指文件内部不再划分记录,是由 一组相关信息组成的有序字符流,即流式文件。一组相关信息组成的有序字符流,即流式文件。 其其长度直接按字节来计算长度直接按字节来计算。 事实上事实上操作系统不知道或不关心文件中存放的操作系统不知道或不关心文件中存放的 内容是什么内容是什么,它所
37、见到的都是一个一个的字节。,它所见到的都是一个一个的字节。 文件中任何信息的含义都由用户级程序解释文件中任何信息的含义都由用户级程序解释。 45 2.无结构的文件无结构的文件 46 两种文件的比较 流式文件就象给一张白纸给用户,用户可将他 的信息任意地写到纸上,没有任何格式上的限 制。 记录式文件就象给一张表格给用户,用户要按 表规定的格式填信息。 显然,结构式文件对用户的限制很大,使用起 来就不方便,所以记录式文件被淘汰是理所当 然的。 47 课堂讨论: 填空题 1.根据文件的逻辑结构,文件分为( )和记录 式文件 2.在文件系统中,用于文件的标识,并按其进 行存取的是文件的( ) 答案:1
38、.流式文件 2.文件名 48 7.3 外存分配方式 一个文件存储介质,格式化后就分成许多大小 相等的单位存储块(物理盘块),在现代 计算机系统中. 一般来说,每个物理块是一个磁盘的扇区, 512字节。并给每个存储块有个编号,称为物 理块号。 常用的外存分配方式有连续分配,链接分配和 索引分配三种。 49 文件存储空间的分配文件存储空间的分配文件的物理结构 50 一.连续分配 51 1.连续分配连续分配 文件A 3 100 r0 r1 r2 磁盘块号 100101102 文件目录文件目录 文件A 目录项 52 2.连续文件结构的特点连续文件结构的特点 优点:结构简单,实现容易,不需要额 外的开销
39、。 缺点: n用户创建文件时要给出文件的大小; n不利于文件的动态增加和修改; 53 连续结构文件的特点连续结构文件的特点 连续分配的优点是在顺序存取时速度较快,一 次可以存取多个盘块,改进了I/O性能。 所以,它常用于存放系统文件,因为这类文件 往往被从头到尾一次存取。另外,也很容易直 接存取文件中的任意一块 例如,要访问从b块开始的第i块,可以直接从 b+i块开始读取,因此,连续结构方式支持顺 序访问和直接访问。 54 二二.链接分配链接分配 链接分配的文件也称之为链接分配的文件也称之为是串联文件是串联文件 串联文件结构是按顺序由串联的块组成的,即 文件的信息存于若干块物理块中,每个物理块
40、 的最末一个字作为链接字,它指出后继块的物 理地址。 文件的最后一块的链接字为结束标记“”, 它表示文件至本块结束。 类似数据结构的链表 55 链接结构链接结构 文件A 100 r1 57 r2 r0 150 磁盘块号 100 磁盘块号 150 磁盘块号 57 文件目录 文件A 目录项 问题:在串联文件结构下,当要存取R i 记录时,应如何操作? 56 链接结构链接结构文件的特点 这种文件结构不要求连续存放。 对于记录式文件一块中可包含一个逻辑 记录或多个逻辑记录 也可以若干物理块包含一个逻辑记录。 57 链接结构链接结构文件的特点 优点: 1.存储空间利用率高; 2.文件创建时用户不必指出文
41、件的大小; 3.文件动态扩充和修改容易。 缺点:只能按队列中的指针顺序搜索,随机存 取效率太低,如果访问文件的最后的内容,实 际上是要访问整个文件。 58 链接分配的两种形式:链接分配的两种形式: 1. 隐式链接隐式链接 25 123 0 567 4 9 10 11 8 131415 12 171819 16 2122 23 20 25 26 27 24 293031 28 filestartend jeep925 目 录 10 1 -1 16 在采用隐式链接分配时,在文件目录的每个目录项 中,都须含有指向链接文件的第一个盘块和最后一个 盘块的指针。 而在每个盘块中都含有一个指向下一个盘块的指
42、针。 59 2. 显式链接显式链接 图 6-9 显式链接结构 0 1 2 3 4 5 物理块号 2 FCBFAT 0 4 5 1 60 6 EOF 11 10 5 EOF 0 1 2 3 4 5 6 7 8 9 FATFCB A 4 FCB B 9 图 6-10 MS-DOS的文件物理结构 61 例题: 假定盘块的大小是1KB,硬盘的大小为500MB, 采用显式链接分配方式时,其FAT需占用多少 存储空间?如果文件A占用硬盘的第11,12, 16,14四个盘块,试画出文件A中各盘块的链 接情况及FAT的情况。 62 例题: 假设盘块大小为1KB,盘块号需占4个字节。请 分别解释在连续分配方式,
43、隐式链接分配方式 和显式链接分配方式中如何将文件的字节偏移 量3500转换为物理块号和块内位移量。 63 3、索引结构、索引结构 链接结构解决了连续分配的外部碎片和大小链接结构解决了连续分配的外部碎片和大小 声明的问题,但是,声明的问题,但是,链接结构不能有效地支链接结构不能有效地支 持直接访问,持直接访问,这是因为块指针与块一起分布这是因为块指针与块一起分布 在整个磁盘,且必须按顺序读出。在整个磁盘,且必须按顺序读出。 索引结构解决了这个问题。索引结构解决了这个问题。索引分配要求系索引分配要求系 统为每个文件建立统为每个文件建立一张索引表一张索引表。 索引结构创建的文件索引结构创建的文件也称
44、之为也称之为索引文件索引文件 64 3、索引结构、索引结构 索引结构文件索引结构文件是另一种形式的非连续 文件,文件数据存放的存储介质上的 物理块号与文件的逻辑块号一一对应, 并建立这样对应关系的数据结构 文件索引表 65 3、索引结构、索引结构 访问文件时,根据文件的逻辑块号查文 件索引表,找到对应的物理块号,然后, 进行访问。 文件由索引表和数据文件构成。这种文件称为 索引文件。 非常类似于书本,它由书目录和正文组成 66 多重索引多重索引 67 索引文件结构 索引文件在存储区中占两个区:索引区 和数据区。索引区存放索引表,数据区 存放数据文件本身。 访问索引文件需要两步操作 查文件索引,
45、由逻辑块号查得物理 块号 由此磁盘物理块号而获得所要求的 信息。 68 索引文件结构 索引文件的特点索引文件的特点 易于文件的增删 直接读写任意记录 索引表的组织索引表的组织多级索引多级索引 69 索引文件实例分析索引文件实例分析UNIX文件索引方式文件索引方式 0 1 9 10 11 12 直接寻址块 直接寻址块 一级间接块 直接寻址块一级间接块二级间接块 直接 寻址 一级间接 二级间接 三级间接 70 课堂讨论: 某文件系统采用索引文件结构,假定文件索引 表的每个表项占3个字节,用一个磁盘块存放 块号(磁盘块的大小为512B)。试问 1)该文件系统能管理的最大磁盘空间是多少 字节 2)若采
46、用2级或3级索引该文件系统能管理的 最大磁盘空间又是多少字节? 71 分析 由于索引表占用一个大小为512B的磁盘,所以 该文件系统的索引表可以管理512/3=170个表 项,而每一个表项对应一个物理块,因此该文 件系统可以管理的最大磁盘空间为 170*512B=87040B=85K 若采用二级索引,则是: 170*170*512B=7225KB 若采用三级索引,则是: 170*170*170*512B=2456500KB=2398.93M 72 例题: 存放在某个磁盘上的文件系统采用混合索引分配方式, 其FCB中共有13个地址项,第09个地址项为直接地 址,第10个地址项为一次间接地址,第1
47、1个地址项为 二次间接地址,第12个地址项为三次间接地址。如果 每个盘块的大小为512字节,若盘块号需要用3个字节 来描述,而每个盘块最多存放170个盘块地址。则: (1)该文件系统允许文件的最大长度是多少? (2)将文件的字节偏移量5000,15000和150000转换 为物理块号和块内偏移量。 73 例题: 设文件索引结点中有7个地址项,其中4个地址项是直 接地址索引,2个地址项是一级间接地址索引,1个地 址项是二级间接地址索引,每个地址项大小为4B,若 磁盘索引块和磁盘数据块大小均为256B,则可表示的 单个文件最大长度是( ) A 33KB B 519KB C 1057KB D 165
48、16KB 4*256+2*(256/4)*256+ (256/4)* (256/4)*256 74 西安电子科技大学:多选题 1.文件的物理结构一般有() A 连续文件 B 流式文件 C 记录式文件 D串联文件 E 索引文件 答案:A D E 75 西安电子科技大学:多选题 2.连续结构的文件适合采用()存取方法 A 顺序存取 B 直接存取 C 按键存取 D分区存取 E 以上均不对 答案:A B 76 课堂讨论: 3.下列文件物理结构中,适合随机访问且易于文件扩 展的是( ) A 连续结构 B 索引结构 C 链式结构且磁盘块定长 D 链式结构且磁盘块变长 答案 B 77 7.3 文件目录 通常
49、,在计算机系统中,大量的文件被 存储在磁盘上。为了对存储在磁盘上的 众多文件进行有效的控制和管理,必须 对它们加以妥善组织。 这种组织是通过文件目录来实现的,文 件目录是一种数据结构,用来标识文件 系统中的文件及其物理地址,供检索时 使用。 78 文件目录的组成 文件名:符号文件命名,如music、game、file等。 文件类型:指明文件属性是普通文件,还是目录文件 或特别文件,是系统文件还是用户文件等。 文件的物理位置:文件在物理设备上的位置,如文件 存放在哪台设备的哪些盘块上。 文件的大小:当前文件大小(以字节、字或块为单位) 和允许的最大长度。 保护信息:对文件读、写及执行等操作的控制
50、权限标 志。 使用计数:表示当前有多少个进程正在使用或打开了 该文件。 时间和日期:这个信息反映了文件创建、最后修改、 最后使用等情况,可用于对文件实施保护和监控等 79 7.3.1 文件控制块和文件目录文件控制块和文件目录 而文件目录信息也叫文件控制块(而文件目录信息也叫文件控制块(file control block ,FCB),它是操作系统),它是操作系统 为管理文件而设置的数据结构,存放了为管理文件而设置的数据结构,存放了 为管理文件所需的所有有关信息(文件为管理文件所需的所有有关信息(文件 属性)。属性)。 文件控制块是文件存在的标志文件控制块是文件存在的标志,它通常,它通常 由文件
51、属性信息组成。由文件属性信息组成。 80 A Typical File Control Block (FCB) 81 FCB的外部表现:文件的属性 82 2.文件目录文件目录 为了对众多的文件进行分门别类的管理,提高为了对众多的文件进行分门别类的管理,提高 文件检索的效率,现代操作系统往往文件检索的效率,现代操作系统往往将文件的将文件的 文件控制块集中在一起进行管理文件控制块集中在一起进行管理。 这种这种FCB的有序集合就称为文件目录的有序集合就称为文件目录,文件控,文件控 制块就是其中的目录项(构成文件目录的项制块就是其中的目录项(构成文件目录的项 目)。目)。 另外,为了实现对文件目录的管
52、理,另外,为了实现对文件目录的管理,通常将文通常将文 件目录以文件的形式保存在外存,这个文件就件目录以文件的形式保存在外存,这个文件就 叫目录文件。叫目录文件。 83 3.索引结点的引入索引结点的引入 为了减少系统开销,采用了把文件名与文件描述信为了减少系统开销,采用了把文件名与文件描述信 息分开的办法,息分开的办法,即使文件描述信息单独形成一个称即使文件描述信息单独形成一个称 为索引结点的数据结构为索引结点的数据结构,简称为,简称为i结点。结点。 文件名索引结点编号 文件名1 文件名2 图 6-15 UNIX的文件目录 84 例题: 在某个文件系统中,每个盘块为512字节,文 件控制块占64
53、个字节,其中文件名占8个字节。 如果索引结点编号占2个字节,对一个存放在 磁盘上的256个目录项的目录,试比较引入索 引结点前后,为找到其中一个文件的FCB,平 均启动磁盘的次数。 85 7.3文件目录文件目录 为了方便用户的使用,提高文件系统的 效率,也必须对系统内的所有文件目录 进行组织。 在现代操作系统中,目录的基本组织方 式有: n一级目录 n二级目录 n树形目录 86 7.3.2 一级目录一级目录 一级目录是最简单的目录结构。在这种组织方式下,一级目录是最简单的目录结构。在这种组织方式下, 全部文件都登记在同一目录中。全部文件都登记在同一目录中。 其特点是简单、易于理解和实现,但那也
54、存在以下的其特点是简单、易于理解和实现,但那也存在以下的 缺陷:缺陷:查找速度慢、不允许重名和不便于文件的共享查找速度慢、不允许重名和不便于文件的共享 87 7. 3. 2 二级目录二级目录 n为改变一级目录文件目录命名冲突,并提高为改变一级目录文件目录命名冲突,并提高 对目录文件检索速度而将目录分为两级:对目录文件检索速度而将目录分为两级: n一级称为主文件目录,给出用户名一级称为主文件目录,给出用户名,用户子,用户子 目录所在的物理位置;目录所在的物理位置; n二级称为用户文件目录二级称为用户文件目录,给出该用户所有文,给出该用户所有文 件的件的FCB。 n文件主目录(文件主目录(MFD)
55、的表目按用户分)的表目按用户分,每每 个用户有一个用户文件目录(个用户有一个用户文件目录(UFD) 88 7.3.2 两级目录两级目录 89 7.3.2 两级目录两级目录 n在二级目录结构中,用户引用特定的文件时,在二级目录结构中,用户引用特定的文件时, 系统只需搜索他自己的系统只需搜索他自己的UFD,因此,不同用,因此,不同用 户可拥有具有相同名称的文件,户可拥有具有相同名称的文件,只要每个只要每个 UFD内的所有文件名称惟一即可。内的所有文件名称惟一即可。 n当用户创建文件时,操作系统当用户创建文件时,操作系统也只搜索该用也只搜索该用 户的户的UFD以确定具有相同名字的文件是否存以确定具有
56、相同名字的文件是否存 在在。 n当删除文件时,操作系统只在局部当删除文件时,操作系统只在局部UFD中对中对 其进行搜索,因此,它并不会删除另一个用其进行搜索,因此,它并不会删除另一个用 户的具有相同名称的文件。户的具有相同名称的文件。 90 7.3.2 两级目录的特点两级目录的特点 二级目录的优点:解决了名称冲突 和文件共享问题,提高了搜索速度, 查找时间也降低了。 但是,它仍有一定的缺陷:缺少灵 活性、不能反映现实世界中的多层 关系。 因此就产生了多级目录结构 91 7.3.3 树型目录(多级目录结构)树型目录(多级目录结构) 又称为多级目录结构,它是二级目录结又称为多级目录结构,它是二级目
57、录结 构的扩充。构的扩充。 这种多层次的目录结构如同一棵倒置的这种多层次的目录结构如同一棵倒置的 树,主目录就是树根,称为树,主目录就是树根,称为根目录根目录 每一个树枝结点就是一个子目录每一个树枝结点就是一个子目录,每一,每一 片树叶描述的一个文件。片树叶描述的一个文件。 92 7.3.3 树型目录树型目录 93 7.3.3 树型目录树型目录 在树形目录结构中,在树形目录结构中,一个文件的全一个文件的全 名名将包括从根目录开始到文件为止将包括从根目录开始到文件为止 的通路上遇到的所有子目录路径。的通路上遇到的所有子目录路径。 各子目录名之间用各子目录名之间用正斜线正斜线“/”或反或反 斜线斜
58、线“”隔开,其中,子目录名组隔开,其中,子目录名组 成的部分又称为路径名。成的部分又称为路径名。 94 7.3.3 树型目录树型目录 系统内的每个文件都有惟一的路径名。系统内的每个文件都有惟一的路径名。 路径名路径名是从根经过所有子目录再到指定文件的路径。是从根经过所有子目录再到指定文件的路径。 路径名有两种形式:路径名有两种形式:绝对路径名和相对路径名绝对路径名和相对路径名。 n绝对路径名绝对路径名从根目录开始并给出路径上的目录名直从根目录开始并给出路径上的目录名直 到指定的文件到指定的文件 n相对路径名相对路径名从当前目录开始定义一个路径。从当前目录开始定义一个路径。 nUNIX/Linu
59、x也使用相对路径名和绝对路径名来标识也使用相对路径名和绝对路径名来标识 文件或目录,只不过文件和目录之间采用文件或目录,只不过文件和目录之间采用“/”来分隔,来分隔, 而不是而不是DOS的的“” 。 95 6.2.4 树型目录树型目录 树形目录 当前目录/root/spell/mail 请问first的相对路径和绝 对路径分别是什么? 96 7.3.3 树型目录树型目录 在上图所示的树形目录中,如果当前目录是 /root/spell/mail, 那么相对路径名prt/first 和绝对路径名root/spell/mail/prt/first指向相同 的文件。 97 7.3.3 树型目录的特点树
60、型目录的特点 多级目录结构与前两种结构相比, 有以下优点: n1.层次清楚 n2.解决了文件重名问题 n3.查找速度快 98 华中科技大学 1.文件路径是指() A文件名和文件扩展名 B一系列的目录文件和该文件的文件名 C从根目录到该文件所经历的路径中各符号的 集合 D目录文件名和文件名的集合 答案:C 99 7.4文件存储空间的管理文件存储空间的管理 存储空间管理是文件系统的重要任务之一。只 有有效地进行存储空间管理,才能保证多个用 户共享文件存储设备和得以实现文件的按名存 取。 由于文件存储设备是分成若干个大小相等的物 理块,并以块为单位来交换信息的,因此,文 件存储空间的管理实质上是一个
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度打井工程地质勘探数据处理合同范本4篇
- 二零二五年度美容化妆品电商平台入驻与运营合同4篇
- 二零二五年度出租车租赁与驾驶员休息保障合同3篇
- 个人住宅租赁简明合同样本(2024版)
- 二零二五版美容院美容院美容项目营销策划与推广合同4篇
- 2025年度厂房场地租赁合同绿色建筑推广范本4篇
- 二零二五年度出境领队团队管理服务合同4篇
- 二零二五储煤场租赁合同(含煤炭价格波动风险管理)3篇
- 2025年度汽车租赁保险附加合同模板4篇
- 2025年版个人委托代缴社保与生育保险代缴合同模板4篇
- 河北省邯郸市永年区2024-2025学年九年级上学期期末考试化学试卷(含答案)
- 交通运输行政执法程序规定培训课件
- 2024届高考英语词汇3500左右
- 三兄弟分田地宅基地协议书范文
- 第八讲 发展全过程人民民主PPT习概论2023优化版教学课件
- 实体瘤疗效评价标准RECIST-1.1版中文
- 企业新春茶话会PPT模板
- GB/T 19185-2008交流线路带电作业安全距离计算方法
- DIC诊治新进展课件
- 公路工程施工现场安全检查手册
- 1汽轮机跳闸事故演练
评论
0/150
提交评论