《第五章文件管理》由会员分享,可在线阅读,更多相关《第五章文件管理(194页珍藏版)》请在金锄头文库上搜索。
1、文件管理文件管理第五章第五章本章要点本章要点文件管理系统文件管理系统文件的基本概念、操作文件的基本概念、操作文件目录文件目录文件的逻辑组织与访问文件的逻辑组织与访问文件记录与数据块的关系文件记录与数据块的关系文件共享文件共享文件存储空间与空闲空间的管理文件存储空间与空闲空间的管理? 问题问题什么是文件?什么是文件?文件由什么组成?文件由什么组成?文件如何命名?文件如何命名?如何保证文件数据的安全?如何保证文件数据的安全?对文件可以进行哪些操作?对文件可以进行哪些操作?文件在磁盘上如何存储?文件在磁盘上如何存储?磁盘的空白存储区如何管理磁盘的空白存储区如何管理 ? 5.1 5.1 文件系统概述文
2、件系统概述 文件系统的功能文件系统的功能有效地管理文件的存储空间;有效地管理文件的存储空间;管理文件目录;管理文件目录;完成文件的读完成文件的读/ /写操作;写操作;实现文件共享与保护;实现文件共享与保护;为为用用户户提提供供交交互互式式命命令令接接口口和和程程序序调调用用接口。接口。交互式文件系统的基本服务交互式文件系统的基本服务用户可以创建、删除、读取或更新文件;用户可以创建、删除、读取或更新文件;用户可以创建、删除、读取或更新文件;用户可以创建、删除、读取或更新文件;一个用户可以受控制地访问其他用户的文件;一个用户可以受控制地访问其他用户的文件;一个用户可以受控制地访问其他用户的文件;一
3、个用户可以受控制地访问其他用户的文件;可以控制不同用户对不同文件的访问权限;可以控制不同用户对不同文件的访问权限;可以控制不同用户对不同文件的访问权限;可以控制不同用户对不同文件的访问权限; 用户可以根据实际需要重新构造文件;用户可以根据实际需要重新构造文件;用户可以根据实际需要重新构造文件;用户可以根据实际需要重新构造文件;允许用户在两个文件之间移动数据;允许用户在两个文件之间移动数据;允许用户在两个文件之间移动数据;允许用户在两个文件之间移动数据;用用用用户户户户能能能能备备备备份份份份文文文文件件件件,且且且且能能能能在在在在文文文文件件件件被被被被毁毁毁毁坏坏坏坏时时时时,恢恢恢恢复复
4、复复文件;文件;文件;文件; 用户可以通过符号名访问文件。用户可以通过符号名访问文件。用户可以通过符号名访问文件。用户可以通过符号名访问文件。 文件系统文件系统是是指指,操操作作系系统统中中的的各各类类文文件件、管管理理文文件件的的软软件件,以以及及管管理理文文件件所所涉涉及及到到的的数数据结构等信息的集合。据结构等信息的集合。有有少少数数文文件件系系统统从从操操作作系系统统中中分分离离出出来来,独立于操作系统存在独立于操作系统存在绝绝大大多多数数操操作作系系统统都都包包含含文文件件管管理理系系统统部分。部分。 5.2 5.2 文件系统与数据库管理系统文件系统与数据库管理系统文件系统文件系统v
5、s. 数据库管理系统数据库管理系统数据库管理系统依赖文件系统数据库管理系统依赖文件系统- - - - 数据库管理系统负责:数据定义及操作数据库管理系统负责:数据定义及操作数据库管理系统负责:数据定义及操作数据库管理系统负责:数据定义及操作- - - - 文件系统只处理无结构、无格式的字节流文件系统只处理无结构、无格式的字节流文件系统只处理无结构、无格式的字节流文件系统只处理无结构、无格式的字节流 数据库管理系统独立于文件系统数据库管理系统独立于文件系统 5.3 5.3 文件文件文件文件文件是一种具有符号名的、相关联元素文件是一种具有符号名的、相关联元素的有序集合的有序集合 各种程序、数据集合各
6、种程序、数据集合一些低速的字符设备,如键盘、终端显一些低速的字符设备,如键盘、终端显示器和打印机等也被看着文件示器和打印机等也被看着文件文件中的数据结构文件中的数据结构字段或域(字段或域(Field)字段具有唯一的值字段具有唯一的值 字段的基本属性:字段的基本属性:长度长度、数据类型数据类型字段长度:固定、可变字段长度:固定、可变 复合字段:由若干子字段组成复合字段:由若干子字段组成 如工资字段:基本工资、工龄工资、如工资字段:基本工资、工龄工资、职称工资等职称工资等文件中的数据结构文件中的数据结构记录(记录(Record)一组相关字段的集合一组相关字段的集合 学学学学生生生生记记记记录录录录
7、:学学学学号号号号、姓姓姓姓名名名名、性性性性别别别别、班班班班级级级级、平平平平均成绩、名次、获奖情况等。均成绩、名次、获奖情况等。均成绩、名次、获奖情况等。均成绩、名次、获奖情况等。记录长度:固定、可变。记录长度:固定、可变。 可变长记录:可变长记录:可变长记录:可变长记录:字段长可变、字段数目可变字段长可变、字段数目可变字段长可变、字段数目可变字段长可变、字段数目可变 可变长记录:长度字段可变长记录:长度字段可变长记录:长度字段可变长记录:长度字段记录:关键字,唯一地标识一条记录记录:关键字,唯一地标识一条记录数据库(数据库(Database)数数数数据据据据库库库库是是是是相相相相关关
8、关关数数数数据据据据的的的的集集集集合合合合,通通通通常常常常由由由由若若若若干干干干数数数数据据据据库库库库表表表表格格格格构构构构成成成成(数数数数据据据据库库库库表表表表格格格格由由由由若若若若干干干干记记记记录录录录构构构构成成成成,记记记记录录录录由若干字段构成)。由若干字段构成)。由若干字段构成)。由若干字段构成)。数据库还可以由一种或多种类型的文件组成。数据库还可以由一种或多种类型的文件组成。数据库还可以由一种或多种类型的文件组成。数据库还可以由一种或多种类型的文件组成。数数数数据据据据库库库库一一一一般般般般需需需需要要要要专专专专门门门门的的的的数数数数据据据据库库库库管管管
9、管理理理理系系系系统统统统进进进进行行行行管管管管理理理理,数数数数据据据据库库库库应应应应用用用用程程程程序序序序运运运运行行行行在在在在数数数数据据据据库库库库管管管管理理理理系系系系统统统统之之之之上。上。上。上。对记录的操作对记录的操作检索所有记录检索所有记录检索所有记录检索所有记录 从从从从文文文文件件件件的的的的第第第第一一一一条条条条记记记记录录录录开开开开始始始始顺顺顺顺序序序序访访访访问问问问文文文文件件件件中中中中的的的的每每每每一一一一条记录。条记录。条记录。条记录。检索一条记录检索一条记录检索一条记录检索一条记录 检索下一条记录检索下一条记录检索下一条记录检索下一条记录
10、 位置指针:记载当前访问的位置。位置指针:记载当前访问的位置。位置指针:记载当前访问的位置。位置指针:记载当前访问的位置。 从位置指针开始访问逻辑上的下一条记录。从位置指针开始访问逻辑上的下一条记录。从位置指针开始访问逻辑上的下一条记录。从位置指针开始访问逻辑上的下一条记录。检索前一条记录检索前一条记录检索前一条记录检索前一条记录 类类类类似似似似于于于于“ “检检检检索索索索下下下下一一一一条条条条记记记记录录录录” ”。访访访访问问问问位位位位置置置置指指指指针针针针的的的的前前前前一条记录。一条记录。一条记录。一条记录。对记录的操作对记录的操作插入一条记录插入一条记录插入一条记录插入一条
11、记录 如如如如果果果果文文文文件件件件中中中中的的的的记记记记录录录录存存存存在在在在某某某某种种种种顺顺顺顺序序序序,那那那那么么么么,新新新新记记记记录录录录必必必必须须须须插插插插入入入入到到到到适适适适当当当当的的的的位位位位置置置置,可可可可能能能能需需需需要要要要物物物物理理理理上移动已有的记录。上移动已有的记录。上移动已有的记录。上移动已有的记录。删除一条记录删除一条记录删除一条记录删除一条记录 删删删删除除除除一一一一条条条条已已已已有有有有的的的的记记记记录录录录,通通通通常常常常需需需需要要要要指指指指定定定定能能能能唯唯唯唯一一一一标标标标识识识识一一一一条条条条记记记记
12、录录录录的的的的关关关关键键键键字字字字。删删删删除除除除操操操操作作作作常常常常常常常常为为为为指指指指定定定定记记记记录录录录注注注注明明明明“ “被被被被删删删删除除除除” ”标标标标志志志志,而而而而非非非非真真真真正正正正“ “抹抹抹抹去去去去” ”。对记录的操作对记录的操作更新一条记录更新一条记录更新一条记录更新一条记录 首首首首先先先先访访访访问问问问指指指指定定定定记记记记录录录录,更更更更新新新新其其其其一一一一个个个个或或或或多多多多个个个个字字字字段段段段值值值值,然然然然后后后后将将将将更更更更新新新新的的的的记记记记录录录录内内内内容容容容写写写写回回回回文文文文件件
13、件件。但但但但是,一般不会更新记录的主关键字的值。是,一般不会更新记录的主关键字的值。是,一般不会更新记录的主关键字的值。是,一般不会更新记录的主关键字的值。检索某些记录检索某些记录检索某些记录检索某些记录 有时需要检索满足某种条件的若干条记录。有时需要检索满足某种条件的若干条记录。有时需要检索满足某种条件的若干条记录。有时需要检索满足某种条件的若干条记录。例如,查询平均成绩例如,查询平均成绩例如,查询平均成绩例如,查询平均成绩90909090分以上的学生,查询某分以上的学生,查询某分以上的学生,查询某分以上的学生,查询某班的男生信息等。班的男生信息等。班的男生信息等。班的男生信息等。 文件的
14、类型文件的类型 按文件的逻辑结构分类按文件的逻辑结构分类无结构文件无结构文件无结构文件无结构文件 无无无无结结结结构构构构文文文文件件件件可可可可以以以以看看看看成成成成是是是是一一一一个个个个字字字字节节节节流流流流,其其其其文文文文件件件件元元元元素素素素为为为为一一一一个个个个“ “字字字字符符符符” ”或或或或“ “字字字字节节节节” ”,有有有有时时时时又又又又称为字节流文件,或流文件。称为字节流文件,或流文件。称为字节流文件,或流文件。称为字节流文件,或流文件。有结构文件有结构文件有结构文件有结构文件 有有有有结结结结构构构构文文文文件件件件的的的的文文文文件件件件元元元元素素素素
15、是是是是一一一一条条条条记记记记录录录录,文文文文件由若干相关记录组成。件由若干相关记录组成。件由若干相关记录组成。件由若干相关记录组成。 根根根根据据据据记记记记录录录录的的的的组组组组织织织织方方方方式式式式不不不不同同同同,可可可可以以以以分分分分为为为为堆堆堆堆文文文文件件件件、顺顺顺顺序序序序文文文文件件件件、索索索索引引引引顺顺顺顺序序序序文文文文件件件件、索索索索引引引引文文文文件件件件和和和和直接(哈希)文件直接(哈希)文件直接(哈希)文件直接(哈希)文件。文件的类型文件的类型 按文件的物理组织结构分类按文件的物理组织结构分类 连连续续文文件件 把把文文件件中中的的信信息息顺顺
16、序序、连连续续地存储到若干相邻的存储块中。地存储到若干相邻的存储块中。非连续文件:链接文件、索引文件非连续文件:链接文件、索引文件 文件的类型文件的类型 按文件的物理组织结构分类按文件的物理组织结构分类 链接文件链接文件链接文件链接文件 文文文文件件件件中中中中逻逻逻逻辑辑辑辑上上上上连连连连续续续续的的的的信信信信息息息息可可可可以以以以存存存存储储储储到到到到分分分分散散散散各各各各处处处处的的的的存储块中,各盘块通过其内的链接指针相连。存储块中,各盘块通过其内的链接指针相连。存储块中,各盘块通过其内的链接指针相连。存储块中,各盘块通过其内的链接指针相连。 一一一一个个个个文文文文件件件件
17、的的的的所所所所有有有有盘盘盘盘块块块块形形形形成成成成一一一一个个个个链链链链表表表表,或或或或用用用用专专专专门门门门的的的的存储块记载一个文件的所有盘块的起始地址。存储块记载一个文件的所有盘块的起始地址。存储块记载一个文件的所有盘块的起始地址。存储块记载一个文件的所有盘块的起始地址。索引文件索引文件索引文件索引文件 文文文文件件件件中中中中逻逻逻逻辑辑辑辑上上上上连连连连续续续续的的的的信信信信息息息息可可可可以以以以存存存存储储储储到到到到分分分分散散散散各各各各处处处处的的的的存储块中。存储块中。存储块中。存储块中。 系系系系统统统统为为为为每每每每个个个个文文文文件件件件建建建建立
18、立立立一一一一张张张张索索索索引引引引表表表表,一一一一个个个个索索索索引引引引表表表表项项项项记载一个存储块或一组连续存储块的起始地址。记载一个存储块或一组连续存储块的起始地址。记载一个存储块或一组连续存储块的起始地址。记载一个存储块或一组连续存储块的起始地址。文件的类型文件的类型 按文件的保护级别分类按文件的保护级别分类只读文件只读文件 仅仅仅仅允允允允许许许许文文文文件件件件主主主主及及及及授授授授权权权权用用用用户户户户对对对对其其其其进进进进行行行行读读读读操操操操作的文件。作的文件。作的文件。作的文件。 用用用用户户户户的的的的某某某某些些些些文文文文件件件件也也也也可可可可以以以
19、以设设设设置置置置成成成成只只只只读读读读属属属属性性性性,不允许修改。不允许修改。不允许修改。不允许修改。执行文件执行文件 只只只只允允允允许许许许授授授授权权权权用用用用户户户户调调调调用用用用执执执执行行行行,不不不不允允允允许许许许读读读读/ / / /写写写写的文件,如系统调用等某些公用程序。的文件,如系统调用等某些公用程序。的文件,如系统调用等某些公用程序。的文件,如系统调用等某些公用程序。文件的类型文件的类型 按文件的保护级别分类按文件的保护级别分类读读/ /写文件写文件 只只允允许许文文件件主主及及授授权权用用户户进进行行读读或或写的文件。写的文件。不保护文件不保护文件 所有用
20、户都可以访问的文件,不受系所有用户都可以访问的文件,不受系统的任何保护。统的任何保护。 文件的类型文件的类型 按文件的性质和用途分类按文件的性质和用途分类系系统统文文件件 指指指指操操操操作作作作系系系系统统统统文文文文件件件件或或或或其其其其它它它它系系系系统统统统文文文文件件件件。一般只能通过操作系统调用为用户服务。一般只能通过操作系统调用为用户服务。一般只能通过操作系统调用为用户服务。一般只能通过操作系统调用为用户服务。用户文件用户文件 由用户的程序或数据组成的文件。由用户的程序或数据组成的文件。由用户的程序或数据组成的文件。由用户的程序或数据组成的文件。库库文文件件 由由由由系系系系统
21、统统统提提提提供供供供给给给给用用用用户户户户调调调调用用用用的的的的各各各各种种种种标标标标准准准准过过过过程程程程、函函函函数数数数和和和和应应应应用用用用程程程程序序序序等等等等。这这这这类类类类文文文文件件件件允允允允许许许许用用用用户户户户调调调调用用用用,但但但但不不不不允允允允许许许许用用用用户户户户修修修修改改改改,如如如如WindowsWindowsWindowsWindows的的的的应应应应用用用用程程程程序序序序编编编编程程程程接接接接口口口口APIAPIAPIAPI,C C C C语语语语言的标准言的标准言的标准言的标准I/OI/OI/OI/O库函数及通信库函数等。库函
22、数及通信库函数等。库函数及通信库函数等。库函数及通信库函数等。文件的类型文件的类型 按文件中的数据形式分类按文件中的数据形式分类源文件源文件 目标文件目标文件 可执行文件可执行文件文件的类型文件的类型 多媒体文件多媒体文件集集集集成成成成了了了了数数数数字字字字、字字字字符符符符、格格格格式式式式化化化化文文文文本本本本、可可可可执执执执行行行行程程程程序序序序、图形、图像、声音等信息。图形、图像、声音等信息。图形、图像、声音等信息。图形、图像、声音等信息。多多多多媒媒媒媒体体体体文文文文件件件件需需需需要要要要的的的的存存存存储储储储空空空空间间间间比比比比传传传传统统统统的的的的数数数数字
23、字字字字字字字符符符符文件大约要高出文件大约要高出文件大约要高出文件大约要高出5 5倍以上。倍以上。倍以上。倍以上。 例例例例如如如如,一一一一页页页页格格格格式式式式化化化化的的的的文文文文本本本本文文文文件件件件大大大大约约约约需需需需要要要要0.5KB0.5KB1KB1KB的的的的存存存存储储储储空空空空间间间间,但但但但同同同同样样样样尺尺尺尺寸寸寸寸的的的的一一一一页页页页彩彩彩彩色色色色图图图图像像像像大大大大约约约约需需需需要要要要10MB10MB存储空间。存储空间。存储空间。存储空间。一般为变长记录文件。一般为变长记录文件。一般为变长记录文件。一般为变长记录文件。多多多多媒媒媒
24、媒体体体体文文文文件件件件文文文文件件件件系系系系统统统统不不不不仅仅仅仅要要要要保保保保存存存存数数数数据据据据,而而而而且且且且还还还还要保存大量的数据类型说明信息。要保存大量的数据类型说明信息。要保存大量的数据类型说明信息。要保存大量的数据类型说明信息。对文件的操作对文件的操作对整个文件的操作对整个文件的操作 建立文件、撤消文件、打开文件、关闭建立文件、撤消文件、打开文件、关闭建立文件、撤消文件、打开文件、关闭建立文件、撤消文件、打开文件、关闭文件、复制文件、修改文件名、打印或显示文文件、复制文件、修改文件名、打印或显示文文件、复制文件、修改文件名、打印或显示文文件、复制文件、修改文件名
25、、打印或显示文件内容等件内容等件内容等件内容等对文件中的数据项的操作对文件中的数据项的操作 读操作、写操作、更新操作、插入操作、读操作、写操作、更新操作、插入操作、读操作、写操作、更新操作、插入操作、读操作、写操作、更新操作、插入操作、删除操作等删除操作等删除操作等删除操作等 对文件的操作对文件的操作打开文件(打开文件(Openfile)首首首首先先先先,根根根根据据据据文文文文件件件件名名名名查查查查找找找找目目目目录录录录文文文文件件件件(由由由由目目目目录录录录构构构构成成成成的文件),找到该文件的目录信息。的文件),找到该文件的目录信息。的文件),找到该文件的目录信息。的文件),找到该
26、文件的目录信息。然然然然后后后后,将将将将该该该该目目目目录录录录信信信信息息息息装装装装入入入入主主主主存存存存,建建建建立立立立相相相相应应应应的的的的文文文文件件件件控控控控制制制制块块块块FCBFCB,并并并并将将将将文文文文件件件件的的的的当当当当前前前前使使使使用用用用信信信信息息息息填填填填入入入入FCBFCB中。中。中。中。最后,返回一个文件内部标识符。最后,返回一个文件内部标识符。最后,返回一个文件内部标识符。最后,返回一个文件内部标识符。如如如如果果果果该该该该文文文文件件件件具具具具有有有有某某某某种种种种存存存存取取取取控控控控制制制制,如如如如只只只只读读读读,或或或
27、或可可可可读读读读/ /写写写写,则则则则文文文文件件件件打打打打开开开开时时时时,这这这这种种种种存存存存取取取取控控控控制制制制也也也也将将将将作作作作为为为为参数同时返回。参数同时返回。参数同时返回。参数同时返回。对文件的操作对文件的操作关闭文件(关闭文件(Closefile)将将该该文文件件FCB中中的的有有关关信信息息写写入入外外存存的的目录信息中;目录信息中;撤消其撤消其FCB;释释放放文文件件占占用用的的其其它它系系统统资资源源,切切断断用用户与该文件的联系。户与该文件的联系。对文件的操作对文件的操作建立文件(建立文件(Createfile)分配必要的外存空间;分配必要的外存空间
28、;建建立立一一个个目目录录项项,记记录录新新文文件件的的文文件件名名、建立时间等信息。建立时间等信息。对文件的操作对文件的操作撤消文件(撤消文件(Destroyfile)也也称称删删除除文文件件。系系统统删删除除一一个个文文件件必必须须至少完成两件事:至少完成两件事:第第一一,判判断断该该文文件件可可否否被被删删除除。若若可可以以被被删删除除,则则首首先先删删除除文文件件的的目目录录项项,否则,给出相应提示。否则,给出相应提示。第二,回收该文件所占用的外存空间。第二,回收该文件所占用的外存空间。对文件的操作对文件的操作复制文件(复制文件(Copyfile)拷贝文件内容及其目录项。拷贝文件内容及
29、其目录项。首首先先查查找找目目录录文文件件,找找到到该该文文件件的的目目录录项,从中找出该文件的外存地址;项,从中找出该文件的外存地址;通过该地址找到文件内容;通过该地址找到文件内容;然然后后,将将其其目目录录项项及及文文件件内内容容,按按指指定定的路径拷贝过去。的路径拷贝过去。对文件的操作对文件的操作修改文件名(修改文件名(Rename)首首先先在在目目录录文文件件中中查查找找指指定定文文件件名名的的目目录项;录项;然后将其中的文件名更换成新的文件名。然后将其中的文件名更换成新的文件名。对文件的操作对文件的操作读操作(读操作(Read)给出文件名和所读字节数。给出文件名和所读字节数。给出文件
30、名和所读字节数。给出文件名和所读字节数。首首首首先先先先查查查查找找找找目目目目录录录录文文文文件件件件,找找找找到到到到指指指指定定定定文文文文件件件件的的的的目目目目录录录录项项项项,从中找出该文件的外存地址;从中找出该文件的外存地址;从中找出该文件的外存地址;从中找出该文件的外存地址;然然然然后后后后,从从从从该该该该文文文文件件件件读读读读指指指指针针针针所所所所指指指指位位位位置置置置开开开开始始始始,读读读读取取取取指指指指定定定定长长长长度度度度的的的的字字字字节节节节数数数数到到到到缓缓缓缓冲冲冲冲区区区区,同同同同时时时时该该该该文文文文件件件件的的的的读读读读指指指指针顺延
31、指定长度的位置。针顺延指定长度的位置。针顺延指定长度的位置。针顺延指定长度的位置。最最最最后后后后,返返返返回回回回最最最最新新新新读读读读指指指指针针针针位位位位置置置置值值值值。如如如如果果果果读读读读指指指指针针针针遇遇遇遇到文件结束标志,则给出相应提示信息。到文件结束标志,则给出相应提示信息。到文件结束标志,则给出相应提示信息。到文件结束标志,则给出相应提示信息。对文件的操作对文件的操作写操作(写操作(Write)必须给出文件名和需要写的字节数。必须给出文件名和需要写的字节数。系系统统从从缓缓冲冲区区中中将将指指定定长长度度的的信信息息写写入入指定文件写指针位置;指定文件写指针位置;将
32、文件的写指针顺延指定长度的位置。将文件的写指针顺延指定长度的位置。对文件的操作对文件的操作更新操作(更新操作(Update)更更更更新新新新文文文文件件件件中中中中的的的的数数数数据据据据项项项项时时时时,系系系系统统统统调调调调用用用用中中中中必必必必须须须须给给给给出出出出文件名、更新数据项的原值及替换值。文件名、更新数据项的原值及替换值。文件名、更新数据项的原值及替换值。文件名、更新数据项的原值及替换值。首首首首先先先先从从从从文文文文件件件件中中中中查查查查找找找找指指指指定定定定数数数数据据据据项项项项值值值值,若若若若找找找找不不不不到到到到,则给出相应信息;则给出相应信息;则给出
33、相应信息;则给出相应信息;若找到,则用替换值更新原值。若找到,则用替换值更新原值。若找到,则用替换值更新原值。若找到,则用替换值更新原值。用户可以指定更新次数或全部自动更新。用户可以指定更新次数或全部自动更新。用户可以指定更新次数或全部自动更新。用户可以指定更新次数或全部自动更新。对文件的操作对文件的操作插入操作(插入操作(Insert)在文件的指定位置添加新的数据项。在文件的指定位置添加新的数据项。在文件的指定位置添加新的数据项。在文件的指定位置添加新的数据项。对对对对于于于于无无无无结结结结构构构构文文文文件件件件,插插插插入入入入一一一一个个个个数数数数据据据据项项项项以以以以后后后后,
34、其其其其后后后后所有字符的索引号将作相应调整;所有字符的索引号将作相应调整;所有字符的索引号将作相应调整;所有字符的索引号将作相应调整;对对对对于于于于有有有有结结结结构构构构文文文文件件件件,插插插插入入入入一一一一个个个个数数数数据据据据项项项项,一一一一般般般般指指指指增增增增加加加加一一一一条条条条记记记记录录录录,新新新新记记记记录录录录之之之之后后后后的的的的所所所所有有有有记记记记录录录录号号号号也也也也将将将将作作作作相应调整。相应调整。相应调整。相应调整。对文件的操作对文件的操作删除操作(删除操作(Delete)删除文件中指定的数据项。删除文件中指定的数据项。首首先先查查找找
35、文文件件中中指指定定数数据据项项,再再将将其其删删除。除。若找不到,则返回相应信息。若找不到,则返回相应信息。用用户户可可以以指指定定删删除除数数据据项项的的位位置置,或或将将数据项在文件中的所有出现均删除。数据项在文件中的所有出现均删除。 5.4 5.4 文件目录文件目录 文件目录的内容文件目录的内容基本信息基本信息基本信息基本信息:文件名、文件类型、文件组织等;:文件名、文件类型、文件组织等;:文件名、文件类型、文件组织等;:文件名、文件类型、文件组织等;地地地地址址址址信信信信息息息息:卷卷卷卷(存存存存储储储储文文文文件件件件的的的的设设设设备备备备)、起起起起始始始始地地地地址址址址
36、,(起起起起始始始始物物物物理理理理地地地地址址址址)、文文文文件件件件长长长长度度度度,(以以以以字字字字节节节节、字字字字或块为单位)等。或块为单位)等。或块为单位)等。或块为单位)等。访访访访问问问问控控控控制制制制信信信信息息息息:文文文文件件件件所所所所有有有有者者者者、访访访访问问问问信信信信息息息息(用用用用户户户户名和口令等)、合法操作等;名和口令等)、合法操作等;名和口令等)、合法操作等;名和口令等)、合法操作等;使用信息使用信息使用信息使用信息:创建时间、创建者身份、当前状态、:创建时间、创建者身份、当前状态、:创建时间、创建者身份、当前状态、:创建时间、创建者身份、当前状
37、态、最近修改时间、最近访问时间等。最近修改时间、最近访问时间等。最近修改时间、最近访问时间等。最近修改时间、最近访问时间等。 文件名文件名文件标识符文件标识符文件结构文件结构文件类型文件类型文件组织文件组织记录长度记录长度当前文件大小当前文件大小最大文件尺寸最大文件尺寸文件设备文件设备物理位置物理位置存取控制存取控制口令口令文件建立时间文件建立时间最近存取时间最近存取时间最近修改时间最近修改时间当前存取方式当前存取方式当前的共享状态当前的共享状态共享访问时的等待状态共享访问时的等待状态进程访问文件所用的逻辑单元号进程访问文件所用的逻辑单元号当前的逻辑位置当前的逻辑位置访问元素的当前物理位置访问
38、元素的当前物理位置下一个元素的物理位置下一个元素的物理位置缓冲区大小缓冲区大小缓冲区地址缓冲区地址指向下一个指向下一个FCB的指针的指针文件创建者文件创建者临时临时/永久文件永久文件文件拥有者文件拥有者FCB目录内容的组织方式及分析目录内容的组织方式及分析目录项:全部目录内容目录项:全部目录内容目录项:部分目录信息,如文件名、文目录项:部分目录信息,如文件名、文件大小、外存中的存储位置等,其余部件大小、外存中的存储位置等,其余部分保存在文件头部分保存在文件头部目录文件及操作目录文件及操作目录文件:多个文件的目录项构成的一目录文件:多个文件的目录项构成的一种特殊文件。种特殊文件。 搜索目录搜索目
39、录 创建目录创建目录 删除目录删除目录 显示目录显示目录 修改目录修改目录目录结构目录结构单级目录结构单级目录结构两级目录结构两级目录结构层次目录结构层次目录结构 :树型目录、无循环图:树型目录、无循环图单级目录结构单级目录结构所有用户的全部文件目录保存在一张目所有用户的全部文件目录保存在一张目录表中,每个文件的目录项占用一个表录表中,每个文件的目录项占用一个表项。项。目录项目录项1目录项目录项2File1目录项目录项3目录项目录项nFile2File3Filen图图5.1单级目录结构单级目录结构单级目录结构分析单级目录结构分析实现简单,易于维护实现简单,易于维护问题:问题: 重名问题重名问题
40、 存放文件数量受限存放文件数量受限 当目录文件很大时,检索时间长当目录文件很大时,检索时间长 不便于实现文件共享不便于实现文件共享两级目录结构两级目录结构主文件目录、用户文件目录主文件目录、用户文件目录SystemUser1User2User3主目录主目录File1File2User1目录目录File1File2User2目录目录File1File2User3目录目录图图5.2两级目录结构两级目录结构两级目录结构分析两级目录结构分析一定程度解决了重名问题一定程度解决了重名问题提高了文件目录检索效率提高了文件目录检索效率简单的文件共享简单的文件共享问题:不便用户文件的逻辑分类;进一问题:不便用户
41、文件的逻辑分类;进一步解决重名、共享、检索效率等问题步解决重名、共享、检索效率等问题层次目录结构层次目录结构 树型目录树型目录子目录子目录文件文件文件文件子目录子目录子目录子目录子目录子目录子目录子目录子目录子目录文件文件主目录主目录图图5.3树型目录结构树型目录结构无循环图结构无循环图结构(root)devliuuserbinweisrctty01 tty02lpmansttdkt kkyp01moonstar图图5.4UNIX的无循环图目录结构的无循环图目录结构文件路径文件路径相对路径相对路径绝对路径绝对路径 5.5 5.5 文件的逻辑组织与访问文件的逻辑组织与访问 有结构文件与文件系统有
42、结构文件与文件系统大多数的文件系统是无结构文件系统大多数的文件系统是无结构文件系统大多数的文件系统是无结构文件系统大多数的文件系统是无结构文件系统实实实实际际际际应应应应用用用用却却却却需需需需要要要要处处处处理理理理各各各各种种种种数数数数据据据据结结结结构构构构,这这这这些些些些数数数数据据据据结结结结构构构构一一一一般般般般不不不不依依依依赖赖赖赖文文文文件件件件系系系系统统统统,而而而而是是是是由由由由相相相相应应应应的的的的应应应应用用用用程序提供。程序提供。程序提供。程序提供。例例例例如如如如,UNIXUNIXUNIXUNIX的的的的文文文文件件件件系系系系统统统统,它它它它本本本
43、本身身身身不不不不含含含含任任任任何何何何数数数数据据据据结结结结构构构构。但但但但是是是是,UNIXUNIXUNIXUNIX却却却却能能能能支支支支持持持持使使使使用用用用有有有有结结结结构构构构文文文文件件件件的的的的应应应应用用用用程程程程序序序序,如如如如各各各各种种种种基基基基于于于于UNIXUNIXUNIXUNIX操操操操作作作作系系系系统统统统的的的的数数数数据据据据库库库库管理系统、电子邮件系统等。管理系统、电子邮件系统等。管理系统、电子邮件系统等。管理系统、电子邮件系统等。这这这这类类类类应应应应用用用用程程程程序序序序必必必必须须须须能能能能定定定定义义义义自自自自己己己己
44、的的的的数数数数据据据据结结结结构构构构,并并并并能实现记录与字节流之间的转换。能实现记录与字节流之间的转换。能实现记录与字节流之间的转换。能实现记录与字节流之间的转换。typemessage=recordto:arrayofaddress;from:arrayofaddress;subject:arrayofline;cc:arrayofaddress;body:arrayofstring;ProceduregetRecord(void);varmsg:message;beginmsg=allocate(sizeof(message);msg.to=getAddress();msg.from
45、=getAddress();msg.cc=getAddress();msg.subject=getLine();msg.body=getString();return(msg);end.ProcedureputRecord(void);varmsg:message;beginputAddress(msg.to);putAddress(msg.from);putAddress(msg.cc);putLine(msg.subject);putString(msg.body);end;图图5.5一种电子邮件的格式定义一种电子邮件的格式定义有结构文件与文件系统有结构文件与文件系统配置在某些大型计算机中
46、的操作系统,配置在某些大型计算机中的操作系统,如如IBM MVS IBM MVS 、MacintoshMacintosh的文件系统自身的文件系统自身就能提供若干数据结构。就能提供若干数据结构。文件系统直接控制管理有结构文件,称文件系统直接控制管理有结构文件,称为有结构文件系统,或高级文件系统为有结构文件系统,或高级文件系统文件组织的一般原则文件组织的一般原则有有有有利利利利于于于于快快快快速速速速访访访访问问问问文文文文件件件件记记记记录录录录 该该该该原原原原则则则则适适适适用用用用于于于于访访访访问问问问单单单单条条条条记记记记录录录录。若若若若以以以以批批批批量量量量方方方方式式式式访访
47、访访问问问问文文文文件件件件,该该该该原原原原则则则则不太重要。不太重要。不太重要。不太重要。易易易易于于于于更更更更新新新新 更更更更新新新新文文文文件件件件内内内内容容容容时时时时,可可可可能能能能需需需需要要要要首首首首先先先先查查查查找找找找源源源源数数数数据据据据,再再再再进进进进行行行行修修修修改改改改。但但但但是是是是,对对对对于于于于 CD-CD-CD-CD-ROM ROM ROM ROM 文件,该原则这并不重要。文件,该原则这并不重要。文件,该原则这并不重要。文件,该原则这并不重要。存存存存储储储储代代代代价价价价小小小小 无无无无冗冗冗冗余余余余信信信信息息息息。但但但但是
48、是是是,有有有有时时时时候候候候必必必必须须须须牺牲适量的存储空间,以提高文件访问速度。牺牲适量的存储空间,以提高文件访问速度。牺牲适量的存储空间,以提高文件访问速度。牺牲适量的存储空间,以提高文件访问速度。维护简单维护简单维护简单维护简单 可靠性高可靠性高可靠性高可靠性高 有结构文件有结构文件堆文件堆文件顺序文件顺序文件索引顺序文件索引顺序文件索引文件索引文件直接(哈希)文件直接(哈希)文件堆文件(堆文件(pile)最简单的文件组织方式。最简单的文件组织方式。最简单的文件组织方式。最简单的文件组织方式。可以是无结构的字节流文件,也可以是由记录可以是无结构的字节流文件,也可以是由记录可以是无结
49、构的字节流文件,也可以是由记录可以是无结构的字节流文件,也可以是由记录构成的有结构文件。构成的有结构文件。构成的有结构文件。构成的有结构文件。组成堆文件的记录可以有不同的字段、不同的组成堆文件的记录可以有不同的字段、不同的组成堆文件的记录可以有不同的字段、不同的组成堆文件的记录可以有不同的字段、不同的长度。因此,严格地说,堆文件应该属于无结长度。因此,严格地说,堆文件应该属于无结长度。因此,严格地说,堆文件应该属于无结长度。因此,严格地说,堆文件应该属于无结构文件。构文件。构文件。构文件。记录按到达先后次序存放,最开始存入的记录记录按到达先后次序存放,最开始存入的记录记录按到达先后次序存放,最
50、开始存入的记录记录按到达先后次序存放,最开始存入的记录为第一条记录,接着存入第二条记录,第三条为第一条记录,接着存入第二条记录,第三条为第一条记录,接着存入第二条记录,第三条为第一条记录,接着存入第二条记录,第三条记录,其余依次类推。记录,其余依次类推。记录,其余依次类推。记录,其余依次类推。堆文件(堆文件(pile)时间时间1n图图5.6堆文件堆文件堆文件(堆文件(pile)有利于累计并保存大批量数据。有利于累计并保存大批量数据。有利于累计并保存大批量数据。有利于累计并保存大批量数据。常常常常用用用用于于于于存存存存放放放放刚刚刚刚采采采采集集集集到到到到的的的的、未未未未被被被被处处处处理
51、理理理的的的的数数数数据据据据,或或或或存存存存储储储储后后后后较较较较少少少少访访访访问问问问的的的的数数数数据据据据,或或或或者者者者不不不不便便便便于于于于组组组组织织织织的的的的数数数数据。据。据。据。堆堆堆堆文文文文件件件件易易易易于于于于更更更更新新新新,因因因因为为为为更更更更新新新新数数数数据据据据直直直直接接接接追追追追加加加加到到到到文文文文件尾,无须插入到某个中间位置。件尾,无须插入到某个中间位置。件尾,无须插入到某个中间位置。件尾,无须插入到某个中间位置。但但但但是是是是,堆堆堆堆文文文文件件件件的的的的记记记记录录录录访访访访问问问问效效效效率率率率极极极极低低低低。
52、因因因因此此此此,大大大大多数应用程序都不采用该文件类型。多数应用程序都不采用该文件类型。多数应用程序都不采用该文件类型。多数应用程序都不采用该文件类型。顺序文件顺序文件(SequentialFile)由若干条逻辑记录按照其关键字的某种顺序排由若干条逻辑记录按照其关键字的某种顺序排由若干条逻辑记录按照其关键字的某种顺序排由若干条逻辑记录按照其关键字的某种顺序排列而构成的文件。列而构成的文件。列而构成的文件。列而构成的文件。是最常用的文件组织方式是最常用的文件组织方式是最常用的文件组织方式是最常用的文件组织方式每条记录都包含固定的字段,具有相同的长度。每条记录都包含固定的字段,具有相同的长度。每
53、条记录都包含固定的字段,具有相同的长度。每条记录都包含固定的字段,具有相同的长度。每条记录都包含一个特殊字段关键字,不同记每条记录都包含一个特殊字段关键字,不同记每条记录都包含一个特殊字段关键字,不同记每条记录都包含一个特殊字段关键字,不同记录的关键字是不同的。录的关键字是不同的。录的关键字是不同的。录的关键字是不同的。记录按关键字排序,若关键字字段的类型是字记录按关键字排序,若关键字字段的类型是字记录按关键字排序,若关键字字段的类型是字记录按关键字排序,若关键字字段的类型是字符型,则按字母排序;若关键字字段是数值型,符型,则按字母排序;若关键字字段是数值型,符型,则按字母排序;若关键字字段是
54、数值型,符型,则按字母排序;若关键字字段是数值型,则按数字排序。则按数字排序。则按数字排序。则按数字排序。顺序文件顺序文件(SequentialFile)关键字关键字图图5.7顺序文件顺序文件顺序文件顺序文件(SequentialFile)常常用用于于批批量量数数据据处处理理,这这时时文文件件的的访访问问效率最高。效率最高。是是唯唯一一、同同时时适适合合在在磁磁盘盘和和磁磁带带中中存存储储的文件。的文件。访问效率比堆文件高。当文件较小,可访问效率比堆文件高。当文件较小,可以将文件全部装入内存,利用某种快速以将文件全部装入内存,利用某种快速的查找算法,如折半查找法、插值查找的查找算法,如折半查找
55、法、插值查找法等快速查找指定的记录。法等快速查找指定的记录。顺序文件顺序文件(SequentialFile)但但但但是是是是,访访访访问问问问一一一一个个个个大大大大型型型型顺顺顺顺序序序序文文文文件件件件时时时时,效效效效率率率率将将将将会会会会大大降低。大大降低。大大降低。大大降低。更新效率较低。因为记录必须插入到按关键更新效率较低。因为记录必须插入到按关键更新效率较低。因为记录必须插入到按关键更新效率较低。因为记录必须插入到按关键字排序的某个位置,其后的各记录必须进行字排序的某个位置,其后的各记录必须进行字排序的某个位置,其后的各记录必须进行字排序的某个位置,其后的各记录必须进行物理上的
56、位移,效率非常低。物理上的位移,效率非常低。物理上的位移,效率非常低。物理上的位移,效率非常低。解决方法:单独建立一个日志文件,或事务解决方法:单独建立一个日志文件,或事务解决方法:单独建立一个日志文件,或事务解决方法:单独建立一个日志文件,或事务文件。新记录首先放在日志文件中,通过周文件。新记录首先放在日志文件中,通过周文件。新记录首先放在日志文件中,通过周文件。新记录首先放在日志文件中,通过周期性地执行批量更新操作,把日志文件合并期性地执行批量更新操作,把日志文件合并期性地执行批量更新操作,把日志文件合并期性地执行批量更新操作,把日志文件合并到主文件中,并按原有的关键字顺序排列全到主文件中
57、,并按原有的关键字顺序排列全到主文件中,并按原有的关键字顺序排列全到主文件中,并按原有的关键字顺序排列全部记录。部记录。部记录。部记录。 索引顺序文件索引顺序文件(IndexedSequentialFile)将主文件(顺序文件)的所有记录按照某种标将主文件(顺序文件)的所有记录按照某种标将主文件(顺序文件)的所有记录按照某种标将主文件(顺序文件)的所有记录按照某种标准分组,例如,首字母相同的记录为一组;或准分组,例如,首字母相同的记录为一组;或准分组,例如,首字母相同的记录为一组;或准分组,例如,首字母相同的记录为一组;或按每小时或某固定长度的时间将记录分组;或按每小时或某固定长度的时间将记录
58、分组;或按每小时或某固定长度的时间将记录分组;或按每小时或某固定长度的时间将记录分组;或者按固定条数的记录为一组,为主文件建立一者按固定条数的记录为一组,为主文件建立一者按固定条数的记录为一组,为主文件建立一者按固定条数的记录为一组,为主文件建立一张索引表。张索引表。张索引表。张索引表。索引表记载每一组的第一条记录的关键字值和索引表记载每一组的第一条记录的关键字值和索引表记载每一组的第一条记录的关键字值和索引表记载每一组的第一条记录的关键字值和指向该记录的指针。指向该记录的指针。指向该记录的指针。指向该记录的指针。索引表和主文件(顺序文件)一起形成索引顺索引表和主文件(顺序文件)一起形成索引顺
59、索引表和主文件(顺序文件)一起形成索引顺索引表和主文件(顺序文件)一起形成索引顺序文件。序文件。序文件。序文件。关键字关键字 索引指针索引指针abczaire索引表索引表aabackbB.A.backzaire主文件主文件图图5.8索引顺序文件索引顺序文件向索引顺序文件插入记录向索引顺序文件插入记录将记录直接插入顺序文件中,效率非常低。将记录直接插入顺序文件中,效率非常低。将记录直接插入顺序文件中,效率非常低。将记录直接插入顺序文件中,效率非常低。建立备份文件。新记录首先插入备份文件中,建立备份文件。新记录首先插入备份文件中,建立备份文件。新记录首先插入备份文件中,建立备份文件。新记录首先插入
60、备份文件中,系统再周期性地批量合并主文件和备份文件。系统再周期性地批量合并主文件和备份文件。系统再周期性地批量合并主文件和备份文件。系统再周期性地批量合并主文件和备份文件。为主文件的每条记录增加一个指针域,指向备为主文件的每条记录增加一个指针域,指向备为主文件的每条记录增加一个指针域,指向备为主文件的每条记录增加一个指针域,指向备份文件的某一条记录,该指针域对应用程序透份文件的某一条记录,该指针域对应用程序透份文件的某一条记录,该指针域对应用程序透份文件的某一条记录,该指针域对应用程序透明。明。明。明。插入新记录到备份文件时,修改新记录逻辑前插入新记录到备份文件时,修改新记录逻辑前插入新记录到
61、备份文件时,修改新记录逻辑前插入新记录到备份文件时,修改新记录逻辑前序记录的指针:前序记录可能在主文件中,可序记录的指针:前序记录可能在主文件中,可序记录的指针:前序记录可能在主文件中,可序记录的指针:前序记录可能在主文件中,可能在在备份文件中能在在备份文件中能在在备份文件中能在在备份文件中多级索引多级索引若主文件非常大,只建立一级索引,则访问效若主文件非常大,只建立一级索引,则访问效若主文件非常大,只建立一级索引,则访问效若主文件非常大,只建立一级索引,则访问效率还是很低。率还是很低。率还是很低。率还是很低。为了提高访问效率,可以为顺序文件建立多级为了提高访问效率,可以为顺序文件建立多级为了
62、提高访问效率,可以为顺序文件建立多级为了提高访问效率,可以为顺序文件建立多级索引,即为索引文件再建立一张索引表,从而索引,即为索引文件再建立一张索引表,从而索引,即为索引文件再建立一张索引表,从而索引,即为索引文件再建立一张索引表,从而形成两级索引,依此类推。形成两级索引,依此类推。形成两级索引,依此类推。形成两级索引,依此类推。根据实际需要还可以建立更多级索引。根据实际需要还可以建立更多级索引。根据实际需要还可以建立更多级索引。根据实际需要还可以建立更多级索引。访问信息时,总是从最高级索引表开始,逐级访问信息时,总是从最高级索引表开始,逐级访问信息时,总是从最高级索引表开始,逐级访问信息时,
63、总是从最高级索引表开始,逐级向低级索引表进行访问,最后访问到主文件中向低级索引表进行访问,最后访问到主文件中向低级索引表进行访问,最后访问到主文件中向低级索引表进行访问,最后访问到主文件中的某记录。的某记录。的某记录。的某记录。顺序文件顺序文件 vs. 一级索引一级索引例如例如一个顺序文件:一个顺序文件:100100万条记录,查找其中万条记录,查找其中的一条记录平均需要访问的一条记录平均需要访问5050万条记录。万条记录。将该文件按将该文件按10001000条记录为一组,建立一条记录为一组,建立一级索引。查找索引表,平均需要查找级索引。查找索引表,平均需要查找500500条记录。查找顺序文件中
64、的某一组,平条记录。查找顺序文件中的某一组,平均需要查找均需要查找500500条记录。共计查找条记录。共计查找10001000条条记录。记录。一级索引一级索引主文件主文件100000010001000*1000=1000000顺序文件顺序文件 vs. 二级索引二级索引如果将该文件按如果将该文件按如果将该文件按如果将该文件按100100100100条记录为一组,为主文件条记录为一组,为主文件条记录为一组,为主文件条记录为一组,为主文件建立一级索引表。建立一级索引表。建立一级索引表。建立一级索引表。再将一级索引表按再将一级索引表按再将一级索引表按再将一级索引表按100100100100条记录为一组
65、,建立一条记录为一组,建立一条记录为一组,建立一条记录为一组,建立一个二级索引。个二级索引。个二级索引。个二级索引。首先查找二级索引表,平均需要查找首先查找二级索引表,平均需要查找首先查找二级索引表,平均需要查找首先查找二级索引表,平均需要查找50505050条记录。条记录。条记录。条记录。再查找二级索引表中某一组,平均需要查找再查找二级索引表中某一组,平均需要查找再查找二级索引表中某一组,平均需要查找再查找二级索引表中某一组,平均需要查找50505050条记录。最后,查找顺序文件中的某一组,平条记录。最后,查找顺序文件中的某一组,平条记录。最后,查找顺序文件中的某一组,平条记录。最后,查找顺
66、序文件中的某一组,平均需要查找均需要查找均需要查找均需要查找50505050条记录。条记录。条记录。条记录。共计查找共计查找共计查找共计查找150150150150条记录。条记录。条记录。条记录。 图图5.9二级索引顺序文件二级索引顺序文件关键字关键字索引指针索引指针一级索引表一级索引表 主文件主文件100100100100二级索引表二级索引表关键字关键字索引指针索引指针100100万万索引文件(索引文件(IndexedFile)文件中记录的访问并非总是按关键字进行,很文件中记录的访问并非总是按关键字进行,很文件中记录的访问并非总是按关键字进行,很文件中记录的访问并非总是按关键字进行,很多应用
67、对记录的访问都是随机的。多应用对记录的访问都是随机的。多应用对记录的访问都是随机的。多应用对记录的访问都是随机的。例如,交互式查询系统往往需要根据用户给定例如,交互式查询系统往往需要根据用户给定例如,交互式查询系统往往需要根据用户给定例如,交互式查询系统往往需要根据用户给定的条件,查询文件中的某条或某几条记录,而的条件,查询文件中的某条或某几条记录,而的条件,查询文件中的某条或某几条记录,而的条件,查询文件中的某条或某几条记录,而非顺序访问文件的每一条记录。非顺序访问文件的每一条记录。非顺序访问文件的每一条记录。非顺序访问文件的每一条记录。主文件的记录不必按关键字排序主文件的记录不必按关键字排
68、序主文件的记录不必按关键字排序主文件的记录不必按关键字排序为文件建立一张索引表,主文件中的每一条记为文件建立一张索引表,主文件中的每一条记为文件建立一张索引表,主文件中的每一条记为文件建立一张索引表,主文件中的每一条记录在索引表中都有一个对应的表项,其中记载录在索引表中都有一个对应的表项,其中记载录在索引表中都有一个对应的表项,其中记载录在索引表中都有一个对应的表项,其中记载了相应记录的索引值及指向记录的指针,并按了相应记录的索引值及指向记录的指针,并按了相应记录的索引值及指向记录的指针,并按了相应记录的索引值及指向记录的指针,并按索引值排序。索引值排序。索引值排序。索引值排序。索引文件(索引
69、文件(IndexedFile)这相当于将主文件的记录逻辑上进行了排序,这相当于将主文件的记录逻辑上进行了排序,这相当于将主文件的记录逻辑上进行了排序,这相当于将主文件的记录逻辑上进行了排序,而无需将每一条记录进行物理上的位移,从而而无需将每一条记录进行物理上的位移,从而而无需将每一条记录进行物理上的位移,从而而无需将每一条记录进行物理上的位移,从而节省了大量的系统时间。节省了大量的系统时间。节省了大量的系统时间。节省了大量的系统时间。要查找文件记录,必须首先访问索引表,而索要查找文件记录,必须首先访问索引表,而索要查找文件记录,必须首先访问索引表,而索要查找文件记录,必须首先访问索引表,而索引
70、表可以按索引号的顺序组织为顺序文件,访引表可以按索引号的顺序组织为顺序文件,访引表可以按索引号的顺序组织为顺序文件,访引表可以按索引号的顺序组织为顺序文件,访问记录时,可以通过计算得到每一条表项的地问记录时,可以通过计算得到每一条表项的地问记录时,可以通过计算得到每一条表项的地问记录时,可以通过计算得到每一条表项的地址,从而实现快速直接访问。址,从而实现快速直接访问。址,从而实现快速直接访问。址,从而实现快速直接访问。 索引文件(索引文件(IndexedFile)图图5.10索引文件索引文件主文件主文件索引表索引表关键字关键字 索引指针索引指针索引文件(索引文件(IndexedFile)完完备
71、备索索引引:为为主主文文件件的的每每条条记记录录建建一一个个索引项。索引项。部分索引:仅为感兴趣的记录建立索引部分索引:仅为感兴趣的记录建立索引索引文件(索引文件(IndexedFile)有有有有的的的的应应应应用用用用系系系系统统统统会会会会自自自自动动动动为为为为文文文文件件件件按按按按主主主主关关关关键键键键字字字字建建建建立立立立索索索索引引引引表表表表。每每每每当当当当向向向向文文文文件件件件中中中中写写写写入入入入记记记记录录录录时时时时,其其其其关关关关键键键键字字字字就就就就自自自自动动动动从从从从记记记记录录录录体体体体中中中中分分分分离离离离出出出出来来来来,放放放放入入入
72、入相相相相应应应应的的的的索索索索引引引引表表表表中,并用指针指向对应的记录起始地址。中,并用指针指向对应的记录起始地址。中,并用指针指向对应的记录起始地址。中,并用指针指向对应的记录起始地址。实实实实际际际际应应应应用用用用中中中中常常常常常常常常需需需需要要要要按按按按不不不不同同同同条条条条件件件件查查查查询询询询记记记记录录录录信信信信息息息息,应应应应允允允允许许许许为为为为每每每每一一一一条条条条记记记记录录录录按按按按多多多多个个个个字字字字段段段段建建建建立立立立多多多多个个个个索索索索引引引引表,以提高实际应用中查询的效率。表,以提高实际应用中查询的效率。表,以提高实际应用中
73、查询的效率。表,以提高实际应用中查询的效率。索引表需要额外的系统空间索引表需要额外的系统空间索引表需要额外的系统空间索引表需要额外的系统空间/ / / /时间开销。但是,时间开销。但是,时间开销。但是,时间开销。但是,使用索引文件会大大提高记录的访问效率。使用索引文件会大大提高记录的访问效率。使用索引文件会大大提高记录的访问效率。使用索引文件会大大提高记录的访问效率。因此,索引文件广泛地用于商业信息管理系统因此,索引文件广泛地用于商业信息管理系统因此,索引文件广泛地用于商业信息管理系统因此,索引文件广泛地用于商业信息管理系统直接(哈希)文件直接(哈希)文件利用利用HashHash函数,根据记录
74、的关键字计算函数,根据记录的关键字计算记录的存储位置,并按关键字访问记录记录的存储位置,并按关键字访问记录能提高记录的访问效率能提高记录的访问效率常用于访问速率要求高、一次存取一条常用于访问速率要求高、一次存取一条记录且记录为定长的文件。如文件目录、记录且记录为定长的文件。如文件目录、价格表、名单等文件记录的存取。价格表、名单等文件记录的存取。 5.6 5.6 文件的物理组织文件的物理组织存储空间的管理存储空间的管理文件存储空间分配的有关问题文件存储空间分配的有关问题从逻辑组织的角度看,文件由若干记录构成;从逻辑组织的角度看,文件由若干记录构成;从逻辑组织的角度看,文件由若干记录构成;从逻辑组
75、织的角度看,文件由若干记录构成;从从从从物物物物理理理理组组组组织织织织的的的的角角角角度度度度看看看看,文文文文件件件件由由由由若若若若干干干干数数数数据据据据块块块块组组组组成成成成。操操操操作作作作系系系系统统统统或或或或文文文文件件件件管管管管理理理理系系系系统统统统负负负负责责责责为为为为文文文文件件件件分分分分配配配配和和和和管管管管理数据块。理数据块。理数据块。理数据块。如何划分磁盘空间?如何划分磁盘空间?如何划分磁盘空间?如何划分磁盘空间?如何为一个新建文件分配空间?如何为一个新建文件分配空间?如何为一个新建文件分配空间?如何为一个新建文件分配空间?如何为一个已存在的文件增加存
76、储空间?如何为一个已存在的文件增加存储空间?如何为一个已存在的文件增加存储空间?如何为一个已存在的文件增加存储空间?用用用用什什什什么么么么数数数数据据据据结结结结构构构构记记记记载载载载文文文文件件件件已已已已分分分分配配配配到到到到的的的的数数数数据据据据块块块块和和和和空闲数据块?空闲数据块?空闲数据块?空闲数据块?预分配与动态分配预分配与动态分配创建新文件时,需要分配存储空间。创建新文件时,需要分配存储空间。创建新文件时,需要分配存储空间。创建新文件时,需要分配存储空间。一次性地为新文件分配足够的存储空间一次性地为新文件分配足够的存储空间一次性地为新文件分配足够的存储空间一次性地为新文
77、件分配足够的存储空间先为文件分配一部分存储空间,以后再根据需先为文件分配一部分存储空间,以后再根据需先为文件分配一部分存储空间,以后再根据需先为文件分配一部分存储空间,以后再根据需要增加存储空间?要增加存储空间?要增加存储空间?要增加存储空间?前一种分配方法称为预分配,后一种分配方法前一种分配方法称为预分配,后一种分配方法前一种分配方法称为预分配,后一种分配方法前一种分配方法称为预分配,后一种分配方法称为动态分配。称为动态分配。称为动态分配。称为动态分配。 预分配与动态分配预分配与动态分配要求文件创建时必须申明需要的最大空间。要求文件创建时必须申明需要的最大空间。要求文件创建时必须申明需要的最
78、大空间。要求文件创建时必须申明需要的最大空间。编编编编译译译译程程程程序序序序,拷拷拷拷贝贝贝贝文文文文件件件件,通通通通过过过过网网网网络络络络传传传传输输输输文文文文件件件件等等等等,可以预先知道文件的大小;可以预先知道文件的大小;可以预先知道文件的大小;可以预先知道文件的大小;很很很很多多多多应应应应用用用用都都都都不不不不可可可可能能能能预预预预先先先先知知知知道道道道文文文文件件件件需需需需要要要要的的的的最最最最大大大大空空空空间。预先准确估计文件大小是不可能的。间。预先准确估计文件大小是不可能的。间。预先准确估计文件大小是不可能的。间。预先准确估计文件大小是不可能的。如如如如果果
79、果果估估估估计计计计的的的的空空空空间间间间太太太太小小小小,无无无无法法法法满满满满足足足足文文文文件件件件的的的的存存存存储储储储需需需需要要要要和和和和存存存存储储储储空空空空间间间间的的的的增增增增长长长长需需需需要要要要;如如如如果果果果估估估估计计计计太太太太大大大大,会会会会浪费存储空间。浪费存储空间。浪费存储空间。浪费存储空间。动态分配方法能满足文件存储空间的增长需要。动态分配方法能满足文件存储空间的增长需要。动态分配方法能满足文件存储空间的增长需要。动态分配方法能满足文件存储空间的增长需要。分区大小分区大小外外存存空空间间被被分分成成若若干干大大小小相相同同的的数数据据块块,
80、类似于内存空间的分页管理技术。类似于内存空间的分页管理技术。分分区区 = = 数数据据块块 有有利利于于提提高高外外存存空空间间的利用率,的利用率,I/OI/O性能较低。性能较低。可变大小的分区可变大小的分区 分区分区 = = 若干连续数据块若干连续数据块与分区大小有关的因素与分区大小有关的因素文件中的数据相邻存储有利于提高性能;文件中的数据相邻存储有利于提高性能;文件中的数据相邻存储有利于提高性能;文件中的数据相邻存储有利于提高性能;若若若若分分分分区区区区太太太太小小小小,文文文文件件件件分分分分配配配配到到到到的的的的分分分分区区区区数数数数目目目目将将将将会会会会很很很很多多多多。用用
81、用用于于于于管管管管理理理理分分分分区区区区(已已已已分分分分配配配配和和和和未未未未分分分分配配配配的的的的)的的的的数数数数据据据据结结结结构如表格等将会很大,增加管理复杂度;构如表格等将会很大,增加管理复杂度;构如表格等将会很大,增加管理复杂度;构如表格等将会很大,增加管理复杂度;若分区大小固定,将会简化空间的分配和回收;若分区大小固定,将会简化空间的分配和回收;若分区大小固定,将会简化空间的分配和回收;若分区大小固定,将会简化空间的分配和回收;若若若若分分分分区区区区大大大大小小小小可可可可变变变变,或或或或分分分分区区区区大大大大小小小小固固固固定定定定且且且且较较较较小小小小,可可
82、可可以减少存储空间的浪费。以减少存储空间的浪费。以减少存储空间的浪费。以减少存储空间的浪费。确定分区大小时,需要综合考虑以上若干因素。确定分区大小时,需要综合考虑以上若干因素。确定分区大小时,需要综合考虑以上若干因素。确定分区大小时,需要综合考虑以上若干因素。 可变大小的分区可变大小的分区vs.固定小分区固定小分区对对对对于于于于预预预预分分分分配配配配方方方方法法法法,若若若若采采采采用用用用小小小小分分分分区区区区,预预预预先先先先分分分分配配配配给给给给文文文文件件件件足足足足够够够够数数数数量量量量的的的的小小小小分分分分区区区区,可可可可能能能能使使使使文文文文件件件件分分分分配配配
83、配表表表表很很很很大大大大。但但但但由由由由于于于于文文文文件件件件空空空空间间间间不不不不再再再再增增增增加加加加,文文文文件件件件分分分分配配配配表表表表将将将将保持固定大小,不会改变。保持固定大小,不会改变。保持固定大小,不会改变。保持固定大小,不会改变。若若若若采采采采用用用用可可可可变变变变大大大大小小小小的的的的连连连连续续续续分分分分区区区区模模模模式式式式。无无无无须须须须设设设设置置置置文文文文件件件件分分分分配配配配表表表表,只只只只需需需需要要要要记记记记住住住住文文文文件件件件存存存存储储储储空空空空间间间间的的的的第第第第一一一一个个个个数据块的地址和分区大小,就能定
84、位一个文件。数据块的地址和分区大小,就能定位一个文件。数据块的地址和分区大小,就能定位一个文件。数据块的地址和分区大小,就能定位一个文件。 基于可变的分区的分配算法基于可变的分区的分配算法首次适应法首次适应法下次适应法下次适应法最佳适应法最佳适应法 文件存储空间的分配技术文件存储空间的分配技术连续分配和非连续分配连续分配和非连续分配非连续分配:链接分配和索引分配非连续分配:链接分配和索引分配 连续分配连续分配采用可变大小的连续分区、预分配技术采用可变大小的连续分区、预分配技术把把逻逻辑辑文文件件中中的的数数据据顺顺序序地地存存储储到到物物理理上上邻邻接接的的各各个个数数据据块块中中,这这样样形
85、形成成的的物物理文件可以进行顺序存取。理文件可以进行顺序存取。优点:简单、容易实现。优点:简单、容易实现。连续分配连续分配文文文文件件件件分分分分配配配配表表表表中中中中为为为为每每每每个个个个文文文文件件件件建建建建立立立立一一一一个个个个表表表表项项项项,其其其其中中中中记载文件的第一个数据块地址及文件长度。记载文件的第一个数据块地址及文件长度。记载文件的第一个数据块地址及文件长度。记载文件的第一个数据块地址及文件长度。对对对对于于于于顺顺顺顺序序序序文文文文件件件件,连连连连续续续续读读读读/ /写写写写多多多多个个个个数数数数据据据据块块块块内内内内容容容容时时时时,性能较好。性能较好
86、。性能较好。性能较好。能很快检索文件中的一个数据块。能很快检索文件中的一个数据块。能很快检索文件中的一个数据块。能很快检索文件中的一个数据块。例例例例如如如如,如如如如果果果果一一一一个个个个文文文文件件件件的的的的第第第第一一一一个个个个数数数数据据据据块块块块的的的的序序序序号号号号为为为为x x,需需需需要要要要检检检检索索索索文文文文件件件件的的的的第第第第y y块块块块,则则则则该该该该数数数数据据据据块块块块在在在在外外外外存存存存中的位置为中的位置为中的位置为中的位置为x+y-1x+y-1。7891011242526272829012345FILE16121314151617FI
87、LE2181920212223FILE3303132333435FILE4文件名文件名 起始块号起始块号文件长度文件长度文件分配表文件分配表FILE114FILE299FILE3204FILE4315图图5.11连续分配连续分配连续分配存在的问题连续分配存在的问题不利于文件尺寸的动态增长。不利于文件尺寸的动态增长。空间利用率不高:对于需要很长时间才空间利用率不高:对于需要很长时间才能完成增长的文件,预先分配的较大存能完成增长的文件,预先分配的较大存储空间也会在较长时间得不到有效利用储空间也会在较长时间得不到有效利用连续分配存在的问题连续分配存在的问题该该分分配配方方案案可可能能会会导导致致磁磁
88、盘盘碎碎片片,严严重重降低外存空间的利用率。降低外存空间的利用率。解解决决方方法法之之一一,系系统统定定期期或或不不定定期期采采用用紧紧凑凑技技术术,将将小小分分区区合合并并为为大大的的、连连续续分区,将文件占用空间合并在一起。分区,将文件占用空间合并在一起。文件名文件名 起始块号起始块号 文件长度文件长度文件分配表文件分配表FILE104FILE249FILE3134FILE4175图图5.12连续分配(紧凑以后)连续分配(紧凑以后)91011242526272829303132333435120345FILE1FILE2201518192122237861213141617FILE3FIL
89、E4链接分配链接分配连续分配的文件分区太大,不利于存储连续分配的文件分区太大,不利于存储空间的有效利用。空间的有效利用。非连续分配可以将文件分区划小,最小非连续分配可以将文件分区划小,最小的文件分区基于一个数据块。的文件分区基于一个数据块。能显著提高存储空间的利用率。能显著提高存储空间的利用率。链接分配方法可以按基于数据块的文件链接分配方法可以按基于数据块的文件分区进行分配,为文件分配非连续的若分区进行分配,为文件分配非连续的若干数据块,数据块之间用指针相连干数据块,数据块之间用指针相连文件名文件名 起始块号起始块号 文件长度文件长度文件分配表文件分配表FILE114FILE2206图图5.1
90、3链接分配链接分配12131415161778910116012345FILE1242526272829181920212223FILE2303132333435链接分配链接分配消消除除连连续续分分配配引引起起的的外外部部碎碎片片,提提高高了了外存空间的利用率。外存空间的利用率。能适应文件尺寸的动态增长。能适应文件尺寸的动态增长。文文件件分分配配表表中中的的目目录录项项也也非非常常简简单单,只只需需记记载载文文件件的的第第一一个个数数据据块块地地址址和和文文件件长度。长度。链接分配链接分配适合于文件的顺序存取,但对于随机存取却相适合于文件的顺序存取,但对于随机存取却相适合于文件的顺序存取,但对
91、于随机存取却相适合于文件的顺序存取,但对于随机存取却相当低效。当低效。当低效。当低效。如果要访问文件的第如果要访问文件的第如果要访问文件的第如果要访问文件的第i i i i 个数据块,必须首先从个数据块,必须首先从个数据块,必须首先从个数据块,必须首先从文件分配表的相应目录项中找到该文件的第一文件分配表的相应目录项中找到该文件的第一文件分配表的相应目录项中找到该文件的第一文件分配表的相应目录项中找到该文件的第一个数据块地址,读出第一个数据块中包含的第个数据块地址,读出第一个数据块中包含的第个数据块地址,读出第一个数据块中包含的第个数据块地址,读出第一个数据块中包含的第二个数据块的指针。二个数据
92、块的指针。二个数据块的指针。二个数据块的指针。然后,从第二个数据块中读出指向第三个数据然后,从第二个数据块中读出指向第三个数据然后,从第二个数据块中读出指向第三个数据然后,从第二个数据块中读出指向第三个数据块的指针。依次类推,直到找到第块的指针。依次类推,直到找到第块的指针。依次类推,直到找到第块的指针。依次类推,直到找到第 i i i i 1 1 1 1个数个数个数个数据块,从中读出指向第据块,从中读出指向第据块,从中读出指向第据块,从中读出指向第i i i i 个数据块的指针。个数据块的指针。个数据块的指针。个数据块的指针。链接分配链接分配最后,读取第最后,读取第最后,读取第最后,读取第
93、i i i i 个数据块的内容。如果一个个数据块的内容。如果一个个数据块的内容。如果一个个数据块的内容。如果一个文件包含成百上千个数据块,则需要花费很长文件包含成百上千个数据块,则需要花费很长文件包含成百上千个数据块,则需要花费很长文件包含成百上千个数据块,则需要花费很长的时间来访问接近链表尾的数据块。的时间来访问接近链表尾的数据块。的时间来访问接近链表尾的数据块。的时间来访问接近链表尾的数据块。大量数据块依靠块内指针逐一相连,其可靠性大量数据块依靠块内指针逐一相连,其可靠性大量数据块依靠块内指针逐一相连,其可靠性大量数据块依靠块内指针逐一相连,其可靠性较差。较差。较差。较差。每个数据块必须包
94、含指针信息,这将占用额外每个数据块必须包含指针信息,这将占用额外每个数据块必须包含指针信息,这将占用额外每个数据块必须包含指针信息,这将占用额外存储空间。存储空间。存储空间。存储空间。 链接分配链接分配为为为为了了了了提提提提高高高高文文文文件件件件检检检检索索索索速速速速度度度度及及及及减减减减少少少少块块块块内内内内指指指指针针针针占占占占用用用用的的的的存存存存储储储储空空空空间间间间,有有有有的的的的操操操操作作作作系系系系统统统统将将将将文文文文件件件件分分分分区区区区设设设设置置置置为为为为若若若若干干干干个个个个(数数数数目目目目相相相相同同同同或或或或不不不不同同同同)连连连连
95、续续续续的的的的数数数数据据据据块块块块,称称称称之之之之为簇为簇为簇为簇(Cluster)(Cluster)。这这这这样样样样,为为为为文文文文件件件件分分分分配配配配存存存存储储储储空空空空间间间间时时时时,以以以以可可可可变变变变大大大大小小小小的的的的分分分分区区区区为为为为单单单单位位位位。文文文文件件件件的的的的存存存存储储储储空空空空间间间间不不不不再再再再由由由由若若若若干干干干离离离离散散散散的的的的、小小小小的的的的数数数数据据据据块块块块构构构构成成成成,而而而而是是是是由由由由数数数数目目目目相相相相对对对对较较较较少少少少的的的的、局部连续的文件分区组成。局部连续的文
96、件分区组成。局部连续的文件分区组成。局部连续的文件分区组成。每个文件的各个文件分区通过指针链接在一起。每个文件的各个文件分区通过指针链接在一起。每个文件的各个文件分区通过指针链接在一起。每个文件的各个文件分区通过指针链接在一起。链接分配链接分配链接分配使文件的存储空间失去连续性,链接分配使文件的存储空间失去连续性,不便于文件的顺序访问。不便于文件的顺序访问。为此,系统可以周期性地将每个文件的为此,系统可以周期性地将每个文件的若干离散数据块进行整理,并修改文件若干离散数据块进行整理,并修改文件分配表中文件的起始地址分配表中文件的起始地址 文件名文件名起始块号起始块号文件长度文件长度文件分配表文件
97、分配表FILE104FILE246图图5.14链接分配链接分配(图(图5.13经过整理以后)经过整理以后)12131415161724252627282918192021222330313233343578910116012345FILE1FILE2索引分配索引分配索引分配能解决连续分配和链接分配存在的诸索引分配能解决连续分配和链接分配存在的诸索引分配能解决连续分配和链接分配存在的诸索引分配能解决连续分配和链接分配存在的诸多问题。多问题。多问题。多问题。不需要在每个分区中花费额外存储空间存储链不需要在每个分区中花费额外存储空间存储链不需要在每个分区中花费额外存储空间存储链不需要在每个分区中花费
98、额外存储空间存储链接指针,而是利用专门的索引结点存储索引信接指针,而是利用专门的索引结点存储索引信接指针,而是利用专门的索引结点存储索引信接指针,而是利用专门的索引结点存储索引信息。息。息。息。索引分配可以基于大小固定的分区索引分配可以基于大小固定的分区索引分配可以基于大小固定的分区索引分配可以基于大小固定的分区 文件名文件名 索引块号索引块号文件分配表文件分配表FILE123图图5.15基于数据块分区的索引分配基于数据块分区的索引分配12131415161724252627282930313233343578910116012345FILE1181920212223310272915索引分配
99、索引分配基基于于数数据据块块的的分分区区能能消消除除外外部部碎碎片片,但但索索引引项项较较多多,可可能能使使一一个个数数据据块块容容纳纳不不了一个文件的所有分区的索引。了一个文件的所有分区的索引。基基于于可可变变分分区区的的索索引引分分配配可可以以保保证证文文件件存存储储空空间间的的局局部部连连续续性性,有有利利于于提提高高文文件访问性能,减少文件的索引项。件访问性能,减少文件的索引项。文件名文件名 索引块号索引块号文件分配表文件分配表FILE123图图5.16基于可变分区的索引分配基于可变分区的索引分配242526272829303132333435181920212223012345FIL
100、E112131415161778910116起始块号起始块号 分区长度分区长度37151327索引分配索引分配周周期期性性地地合合并并一一些些可可变变分分区区成成为为一一个个较较大大的的连连续续分分区区,进进一一步步减减少少文文件件的的索索引引项。项。合合并并整整理理不不能能减减少少基基于于数数据据块块的的索索引引项项,但但可可以以使使文文件件的的存存储储空空间间连连续续,提提高高文文件访问效率。件访问效率。索引分配索引分配如如果果文文件件的的索索引引项项太太多多,可可以以建建立立二二级级索引,甚至多级索引。索引,甚至多级索引。 索索引引分分配配同同时时支支持持顺顺序序访访问问和和直直接接访访
101、问问,因而是最普遍的一种文件存储分配技术。因而是最普遍的一种文件存储分配技术。索引分配的优点索引分配的优点支持文件的直接存取。当需要存取文件的第支持文件的直接存取。当需要存取文件的第支持文件的直接存取。当需要存取文件的第支持文件的直接存取。当需要存取文件的第i i i i号分区时,可以直接从索引表中找到第号分区时,可以直接从索引表中找到第号分区时,可以直接从索引表中找到第号分区时,可以直接从索引表中找到第i i i i个分个分个分个分区的数据块号或可变分区的起始数据块号。区的数据块号或可变分区的起始数据块号。区的数据块号或可变分区的起始数据块号。区的数据块号或可变分区的起始数据块号。能满足文件
102、的动态增长需要,只需要更新索引能满足文件的动态增长需要,只需要更新索引能满足文件的动态增长需要,只需要更新索引能满足文件的动态增长需要,只需要更新索引结点的内容,就可以把新增加的分区记录下来。结点的内容,就可以把新增加的分区记录下来。结点的内容,就可以把新增加的分区记录下来。结点的内容,就可以把新增加的分区记录下来。利用多级索引,可以支持大型文件的存取。利用多级索引,可以支持大型文件的存取。利用多级索引,可以支持大型文件的存取。利用多级索引,可以支持大型文件的存取。 索引分配存在的问题索引分配存在的问题对于一些较小的文件,例如,仅需要几对于一些较小的文件,例如,仅需要几个数据块的文件,采用索引
103、分配方案也个数据块的文件,采用索引分配方案也必须为之建立一个索引表,索引节点的必须为之建立一个索引表,索引节点的利用率较低。利用率较低。如果文件太大,建立多级索引会花费很如果文件太大,建立多级索引会花费很长时间,而且需要海量存储空间。长时间,而且需要海量存储空间。 空闲空间的管理空闲空间的管理空闲分区表空闲分区表空闲分区表空闲分区表空闲分区链表空闲分区链表空闲分区链表空闲分区链表索引索引索引索引位示图位示图位示图位示图空闲分区表空闲分区表 将存储空间中各个空闲分区登记在一张表中,一个分将存储空间中各个空闲分区登记在一张表中,一个分将存储空间中各个空闲分区登记在一张表中,一个分将存储空间中各个空
104、闲分区登记在一张表中,一个分区对应一个表项,并将所有空闲分区按其起始存储块区对应一个表项,并将所有空闲分区按其起始存储块区对应一个表项,并将所有空闲分区按其起始存储块区对应一个表项,并将所有空闲分区按其起始存储块号递增的次序排列,见表号递增的次序排列,见表号递增的次序排列,见表号递增的次序排列,见表:表表5.2空闲分区表空闲分区表空闲分区表空闲分区表分区起始块号分区起始块号空闲分区号空闲分区号分区长度分区长度01152418322447空闲分区表空闲分区表适合于可变大小分区的连续分配方式。适合于可变大小分区的连续分配方式。适合于可变大小分区的连续分配方式。适合于可变大小分区的连续分配方式。为为
105、为为文文文文件件件件分分分分配配配配存存存存储储储储空空空空间间间间时时时时,首首首首先先先先顺顺顺顺序序序序查查查查找找找找空空空空闲闲闲闲分分分分区区区区表表表表中中中中的的的的各各各各个个个个表表表表项项项项,直直直直至至至至找找找找到到到到第第第第一一一一个个个个大大大大小小小小适适适适合合合合的空闲分区。的空闲分区。的空闲分区。的空闲分区。可可可可以以以以采采采采用用用用首首首首次次次次适适适适应应应应分分分分配配配配算算算算法法法法、下下下下次次次次适适适适应应应应分分分分配配配配算算算算法、最佳适应分配算法等。法、最佳适应分配算法等。法、最佳适应分配算法等。法、最佳适应分配算法等
106、。然然然然后后后后,将将将将该该该该分分分分区区区区分分分分配配配配给给给给文文文文件件件件,同同同同时时时时修修修修改改改改空空空空闲闲闲闲分分分分区表,删除相应表项。区表,删除相应表项。区表,删除相应表项。区表,删除相应表项。当当当当删删删删除除除除文文文文件件件件释释释释放放放放出出出出空空空空间间间间时时时时,系系系系统统统统回回回回收收收收其其其其存存存存储储储储空空空空间,合并相邻空闲分区间,合并相邻空闲分区间,合并相邻空闲分区间,合并相邻空闲分区空闲分区表空闲分区表实实实实现现现现简简简简单单单单。对对对对于于于于最最最最佳佳佳佳适适适适应应应应分分分分配配配配算算算算法法法法,
107、可可可可以以以以将将将将各各各各空空空空闲闲闲闲分分分分区区区区按按按按照照照照(长长长长度度度度)从从从从小小小小到到到到大大大大的的的的顺顺顺顺序序序序进进进进行行行行排排排排列列列列,而而而而非非非非空空空空闲闲闲闲分分分分区区区区起起起起始始始始块块块块号号号号递递递递增增增增的的的的顺顺顺顺序序序序排排排排列列列列。再再再再利利利利用用用用有有有有效效效效的的的的查查查查找找找找算算算算法法法法,能能能能很很很很快快快快找找找找到到到到需需需需要要要要大大大大小小小小的空闲分区。的空闲分区。的空闲分区。的空闲分区。但是,当存储空间中的空闲分区分布较分散且但是,当存储空间中的空闲分区分
108、布较分散且但是,当存储空间中的空闲分区分布较分散且但是,当存储空间中的空闲分区分布较分散且数量较多时,空闲分区表将会很大。需要很大数量较多时,空闲分区表将会很大。需要很大数量较多时,空闲分区表将会很大。需要很大数量较多时,空闲分区表将会很大。需要很大的内存空间,会降低空闲分区表的检索速度。的内存空间,会降低空闲分区表的检索速度。的内存空间,会降低空闲分区表的检索速度。的内存空间,会降低空闲分区表的检索速度。对于非连续存储的文件,如基于数据块的链接对于非连续存储的文件,如基于数据块的链接对于非连续存储的文件,如基于数据块的链接对于非连续存储的文件,如基于数据块的链接文件,或基于数据块的索引文件,
109、合并空闲分文件,或基于数据块的索引文件,合并空闲分文件,或基于数据块的索引文件,合并空闲分文件,或基于数据块的索引文件,合并空闲分区的操作并非必须,反而会影响其效率。区的操作并非必须,反而会影响其效率。区的操作并非必须,反而会影响其效率。区的操作并非必须,反而会影响其效率。空闲分区链表空闲分区链表用用用用专专专专门门门门的的的的空空空空闲闲闲闲分分分分区区区区表表表表登登登登记记记记空空空空闲闲闲闲分分分分区区区区信信信信息息息息会会会会浪浪浪浪费费费费一一一一定定定定的的的的存存存存储储储储空空空空间间间间,而而而而且且且且不不不不适适适适合合合合登登登登记记记记分分分分散散散散且且且且数数
110、数数目目目目很很很很多多多多的的的的空空空空闲闲闲闲分分分分区区区区,不不不不利利利利于于于于基基基基于于于于存存存存储储储储块块块块的的的的链链链链接接接接文文文文件和索引文件的存储空间分配。件和索引文件的存储空间分配。件和索引文件的存储空间分配。件和索引文件的存储空间分配。可可可可以以以以通通通通过过过过指指指指针针针针将将将将各各各各个个个个空空空空闲闲闲闲分分分分区区区区连连连连接接接接起起起起来来来来,并并并并记记记记载各空闲分区大小,称为空闲分区链表。载各空闲分区大小,称为空闲分区链表。载各空闲分区大小,称为空闲分区链表。载各空闲分区大小,称为空闲分区链表。表表5.3空闲分区链表空
111、闲分区链表 015418 224 7head空闲分区链表空闲分区链表适合于各种文件分配方法。适合于各种文件分配方法。适合于各种文件分配方法。适合于各种文件分配方法。如如如如果果果果基基基基于于于于存存存存储储储储块块块块分分分分配配配配,则则则则可可可可以以以以取取取取空空空空闲闲闲闲分分分分区区区区链链链链的的的的第第第第一一一一个个个个存存存存储储储储块块块块进进进进行行行行分分分分配配配配,并并并并调调调调整整整整空空空空闲闲闲闲分分分分区区区区链链链链首首首首指针和分区大小。指针和分区大小。指针和分区大小。指针和分区大小。如如如如果果果果基基基基于于于于可可可可变变变变分分分分区区区区
112、分分分分配配配配,可可可可以以以以采采采采用用用用首首首首次次次次适适适适应应应应算算算算法法法法,从从从从链链链链表表表表头头头头开开开开始始始始查查查查找找找找,找找找找到到到到的的的的第第第第一一一一个个个个适适适适合合合合的的的的分分分分区区区区则则则则可可可可分分分分配配配配。然然然然后后后后,调调调调整整整整空空空空闲闲闲闲分分分分区区区区链链链链首首首首指指指指针针针针和分区大小。和分区大小。和分区大小。和分区大小。当删除文件释放存储空间时,系统回收其存储当删除文件释放存储空间时,系统回收其存储当删除文件释放存储空间时,系统回收其存储当删除文件释放存储空间时,系统回收其存储空间,
113、并将回收的分区链接到空闲分区链表中。空间,并将回收的分区链接到空闲分区链表中。空间,并将回收的分区链接到空闲分区链表中。空间,并将回收的分区链接到空闲分区链表中。空闲分区链表空闲分区链表:问题问题一一一一段段段段时时时时间间间间以以以以后后后后,可可可可能能能能会会会会使使使使空空空空闲闲闲闲分分分分区区区区链链链链表表表表中中中中包包包包含含含含太太太太多多多多小小小小分分分分区区区区,使使使使文文文文件件件件分分分分配配配配到到到到的的的的存存存存储储储储空空空空间间间间过过过过分分分分离离离离散。散。散。散。由由由由于于于于空空空空闲闲闲闲分分分分区区区区长长长长度度度度等等等等信信信信
114、息息息息保保保保存存存存在在在在存存存存储储储储块块块块中中中中,每每每每次次次次将将将将存存存存储储储储块块块块分分分分配配配配出出出出去去去去写写写写入入入入文文文文件件件件数数数数据据据据之之之之前前前前,必必必必须须须须首首首首先先先先读读读读出出出出其其其其中中中中的的的的有有有有关关关关空空空空闲闲闲闲分分分分区区区区信信信信息息息息,否否否否则则则则将将将将丢丢丢丢失失失失链链链链接接接接指指指指针针针针。如如如如果果果果一一一一个个个个文文文文件件件件需需需需要要要要很很很很多多多多空空空空闲闲闲闲分分分分区区区区,这种操作模式将大大降低文件存储速度。这种操作模式将大大降低文件
115、存储速度。这种操作模式将大大降低文件存储速度。这种操作模式将大大降低文件存储速度。空闲分区链表空闲分区链表:问题问题删删删删除除除除一一一一个个个个由由由由许许许许多多多多离离离离散散散散小小小小分分分分区区区区组组组组成成成成的的的的文文文文件件件件时时时时,将将将将回回回回收收收收的的的的小小小小分分分分区区区区链链链链接接接接到到到到空空空空闲闲闲闲分分分分区区区区链链链链表表表表中中中中需需需需要要要要很很很很长长长长时间。时间。时间。时间。若若若若一一一一个个个个文文文文件件件件申申申申请请请请连连连连续续续续存存存存储储储储空空空空间间间间,则则则则需需需需要要要要花花花花费费费费
116、较较较较长的时间查找相邻的空闲分区。长的时间查找相邻的空闲分区。长的时间查找相邻的空闲分区。长的时间查找相邻的空闲分区。因因因因此此此此,这这这这种种种种空空空空闲闲闲闲空空空空间间间间组组组组织织织织方方方方法法法法适适适适合合合合于于于于非非非非连连连连续续续续存存存存储文件。储文件。储文件。储文件。索引索引将空闲分区看作文件,按文件存储空间分配方将空闲分区看作文件,按文件存储空间分配方将空闲分区看作文件,按文件存储空间分配方将空闲分区看作文件,按文件存储空间分配方法为空闲分区建立索引。法为空闲分区建立索引。法为空闲分区建立索引。法为空闲分区建立索引。基于可变分区建立索引比基于存储块建立索
117、引基于可变分区建立索引比基于存储块建立索引基于可变分区建立索引比基于存储块建立索引基于可变分区建立索引比基于存储块建立索引的效率高。的效率高。的效率高。的效率高。索引表中为每一个空闲分区建立一个索引项,索引表中为每一个空闲分区建立一个索引项,索引表中为每一个空闲分区建立一个索引项,索引表中为每一个空闲分区建立一个索引项,根据索引项查找空闲分区,将会提高文件存储根据索引项查找空闲分区,将会提高文件存储根据索引项查找空闲分区,将会提高文件存储根据索引项查找空闲分区,将会提高文件存储效率。效率。效率。效率。利用索引方法管理空闲空间,适合于各种文件利用索引方法管理空闲空间,适合于各种文件利用索引方法管
118、理空闲空间,适合于各种文件利用索引方法管理空闲空间,适合于各种文件分配法。分配法。分配法。分配法。7891011242526272829012345FILE16121314151617FILE2181920212223FILE3303132333435FILE4分区号分区号 分区长度分区长度 索引指针索引指针空闲分区索引表空闲分区索引表11243247表表5.4空闲分区索引表空闲分区索引表位示图位示图利用二进制位利用二进制位0、1表示存储空间中存储表示存储空间中存储块的使用状态。空闲分区块的使用状态。空闲分区:0,已分配分区,已分配分区:1(或者相反)。(或者相反)。由所有存储块对应的位构成一
119、个向量,由所有存储块对应的位构成一个向量,称为位示图,如图称为位示图,如图011110000111111111001111000000011111图图5.17位示图位示图位示图位示图可以容易地找到一个或一组连续的空闲分区。可以容易地找到一个或一组连续的空闲分区。可以容易地找到一个或一组连续的空闲分区。可以容易地找到一个或一组连续的空闲分区。分配空闲空间时,从位示图中查找标志位为分配空闲空间时,从位示图中查找标志位为分配空闲空间时,从位示图中查找标志位为分配空闲空间时,从位示图中查找标志位为0 0 0 0的位,并按照某种算法换算成对应的空闲存储的位,并按照某种算法换算成对应的空闲存储的位,并按照
120、某种算法换算成对应的空闲存储的位,并按照某种算法换算成对应的空闲存储块号及其物理位置,并修改对应位为块号及其物理位置,并修改对应位为块号及其物理位置,并修改对应位为块号及其物理位置,并修改对应位为1 1 1 1。当删除文件释放存储空间时,将释放的所有数当删除文件释放存储空间时,将释放的所有数当删除文件释放存储空间时,将释放的所有数当删除文件释放存储空间时,将释放的所有数据块逐一换算成对应的位示图位置,并将其对据块逐一换算成对应的位示图位置,并将其对据块逐一换算成对应的位示图位置,并将其对据块逐一换算成对应的位示图位置,并将其对应的二进制位的值修改为应的二进制位的值修改为应的二进制位的值修改为应
121、的二进制位的值修改为0 0 0 0。位示图位示图一个位示图需要占用的存储空间大小为:一个位示图需要占用的存储空间大小为:一个位示图需要占用的存储空间大小为:一个位示图需要占用的存储空间大小为:磁盘容量(字节数)磁盘容量(字节数)磁盘容量(字节数)磁盘容量(字节数)/ /(8*8*数据块大小)数据块大小)数据块大小)数据块大小)对对对对于于于于容容容容量量量量较较较较小小小小的的的的磁磁磁磁盘盘盘盘,位位位位示示示示图图图图占占占占用用用用的的的的空空空空间间间间会会会会很很很很小。小。小。小。但但但但是是是是,对对对对于于于于一一一一个个个个16GB16GB的的的的磁磁磁磁盘盘盘盘,若若若若数
122、数数数据据据据块块块块大大大大小小小小为为为为512512字字字字节节节节,则则则则位位位位示示示示图图图图大大大大小小小小为为为为4MB4MB,大大大大约约约约需需需需要要要要占用占用占用占用80008000个磁盘块的存储空间。个磁盘块的存储空间。个磁盘块的存储空间。个磁盘块的存储空间。很难一次性将该位示图全部装入内存很难一次性将该位示图全部装入内存很难一次性将该位示图全部装入内存很难一次性将该位示图全部装入内存位示图位示图即即使使内内存存足足够够大大,可可以以存存放放全全部部或或绝绝大大部部分分位位示示图图数数据据,搜搜索索一一个个很很大大的的位位示示图将会降低文件系统的性能。图将会降低文
123、件系统的性能。尤尤其其当当磁磁盘盘空空间间快快用用完完,剩剩下下的的空空闲闲磁磁盘盘块块很很少少时时,文文件件系系统统的的性性能能将将严严重重降降低。低。位示图位示图因因因因此此此此,大大大大多多多多数数数数使使使使用用用用位位位位示示示示图图图图的的的的文文文文件件件件系系系系统统统统都都都都需需需需要要要要另另另另设设设设一一一一个个个个辅辅辅辅助助助助数数数数据据据据结结结结构构构构,用用用用于于于于汇汇汇汇总总总总位位位位示示示示图图图图的的的的子子子子区区区区域内容。域内容。域内容。域内容。可可可可以以以以将将将将位位位位示示示示图图图图按按按按逻逻逻逻辑辑辑辑结结结结构构构构划划划
124、划分分分分为为为为若若若若干干干干子子子子区区区区域域域域,一个子区域表示一个连续的空闲分区。一个子区域表示一个连续的空闲分区。一个子区域表示一个连续的空闲分区。一个子区域表示一个连续的空闲分区。汇汇汇汇总总总总表表表表中中中中记记记记载载载载连连连连续续续续空空空空闲闲闲闲分分分分区区区区的的的的个个个个数数数数和和和和连连连连续续续续空空空空闲闲闲闲分分分分区区区区的的的的长长长长度度度度。若若若若需需需需要要要要为为为为文文文文件件件件分分分分配配配配连连连连续续续续空空空空间间间间,则则则则首首首首先先先先查查查查找找找找汇汇汇汇总总总总表表表表,快快快快速速速速找找找找到到到到合合合
125、合适适适适的的的的子子子子区区区区域域域域,再再再再将其对应的空闲分区分配出去。将其对应的空闲分区分配出去。将其对应的空闲分区分配出去。将其对应的空闲分区分配出去。 5.7 5.7 逻辑文件与物理数据块之间的转换逻辑文件与物理数据块之间的转换 字节流、记录与数据块之间的转换字节流、记录与数据块之间的转换无结构字节流文件:由若干字节组成,其内不无结构字节流文件:由若干字节组成,其内不无结构字节流文件:由若干字节组成,其内不无结构字节流文件:由若干字节组成,其内不含任何数据结构。其中每一个字节对应一个非含任何数据结构。其中每一个字节对应一个非含任何数据结构。其中每一个字节对应一个非含任何数据结构。
126、其中每一个字节对应一个非负整数索引号。负整数索引号。负整数索引号。负整数索引号。文件指针指向文件中某个字节的位置。文件指针指向文件中某个字节的位置。文件指针指向文件中某个字节的位置。文件指针指向文件中某个字节的位置。而文件在存储介质上是以数据块为存储单位,而文件在存储介质上是以数据块为存储单位,而文件在存储介质上是以数据块为存储单位,而文件在存储介质上是以数据块为存储单位,一个数据块包含若干字节。一个数据块包含若干字节。一个数据块包含若干字节。一个数据块包含若干字节。因此,无结构字节流文件系统必须提供一个字因此,无结构字节流文件系统必须提供一个字因此,无结构字节流文件系统必须提供一个字因此,无
127、结构字节流文件系统必须提供一个字节流与数据块之间的转换接口,简称节流与数据块之间的转换接口,简称节流与数据块之间的转换接口,简称节流与数据块之间的转换接口,简称“ “流流流流块块块块转换器转换器转换器转换器” ”,如图,如图,如图,如图5.18(a)5.18(a)5.18(a)5.18(a)所示。所示。所示。所示。文件指针文件指针文件指针文件指针流流块转换器块转换器物理数据块物理数据块(a)字节流文件字节流文件b1b1b1bi记录记录流转换器流转换器有结构文件由若干记录构成,对应的物有结构文件由若干记录构成,对应的物理数据块也是由记录构成。理数据块也是由记录构成。因此,必须通过因此,必须通过“
128、记录记录块转换器块转换器”将将数据块转换成记录,或将记录转换为数数据块转换成记录,或将记录转换为数据块,如图据块,如图5.18(b)记录记录块转换器块转换器物理数据块物理数据块(b)有结构文件有结构文件字节流、记录与数据块之间的转换字节流、记录与数据块之间的转换但是,并非所有的文件系统都提供了这两个转但是,并非所有的文件系统都提供了这两个转但是,并非所有的文件系统都提供了这两个转但是,并非所有的文件系统都提供了这两个转换接口,如换接口,如换接口,如换接口,如MSDOSMSDOS及及及及UNIXUNIX的文件系统仅提的文件系统仅提的文件系统仅提的文件系统仅提供供供供“ “流流流流块转换器块转换器
129、块转换器块转换器” ”接口,而不提供接口,而不提供接口,而不提供接口,而不提供“ “记录记录记录记录块转换器块转换器块转换器块转换器” ”接口。它们将数据结构的定义及转接口。它们将数据结构的定义及转接口。它们将数据结构的定义及转接口。它们将数据结构的定义及转换功能留给了应用程序换功能留给了应用程序换功能留给了应用程序换功能留给了应用程序一些大型计算机如一些大型计算机如一些大型计算机如一些大型计算机如IBMMVSIBMMVS及及及及AppleAppleMacintoshMacintosh的文件系统支持有结构文件,并提的文件系统支持有结构文件,并提的文件系统支持有结构文件,并提的文件系统支持有结构
130、文件,并提供了供了供了供了“ “记录记录记录记录块转换器块转换器块转换器块转换器” ”接口。接口。接口。接口。记录如何组成数据块记录如何组成数据块为为为为了了了了简简简简化化化化I/OI/O操操操操作作作作、缓缓缓缓冲冲冲冲区区区区及及及及外外外外存存存存空空空空间间间间的的的的分分分分配配配配和和和和管管管管理理理理,操操操操作作作作系系系系统统统统通通通通常常常常将将将将外外外外存存存存划划划划分分分分为为为为固固固固定定定定长长长长度度度度的数据块。的数据块。的数据块。的数据块。对对对对记记记记录录录录的的的的平平平平均均均均长长长长度度度度而而而而言言言言,数数数数据据据据块块块块的的
131、的的长长长长度度度度如如如如何何何何确确确确定呢?定呢?定呢?定呢?数数数数据据据据块块块块越越越越大大大大,一一一一次次次次I/OI/O传传传传输输输输的的的的记记记记录录录录就就就就越越越越多多多多。而而而而且且且且,尺尺尺尺寸寸寸寸较较较较大大大大的的的的数数数数据据据据块块块块适适适适合合合合文文文文件件件件的的的的顺顺顺顺序序序序访访访访问问问问,可以减少可以减少可以减少可以减少I/OI/O次数,加快文件传输速度。次数,加快文件传输速度。次数,加快文件传输速度。次数,加快文件传输速度。记录如何组成数据块记录如何组成数据块但但但但是是是是,如如如如果果果果对对对对文文文文件件件件进进进
132、进行行行行随随随随机机机机访访访访问问问问,或或或或文文文文件件件件访访访访问问问问的的的的局局局局部部部部性性性性很很很很差差差差。那那那那么么么么,采采采采用用用用大大大大数数数数据据据据块块块块,传传传传输输输输的的的的部分记录将是无用的。部分记录将是无用的。部分记录将是无用的。部分记录将是无用的。另另另另外外外外,大大大大数数数数据据据据块块块块需需需需要要要要更更更更大大大大的的的的I/OI/O缓缓缓缓冲冲冲冲区区区区支支支支持持持持,会增加缓冲区的管理复杂度。会增加缓冲区的管理复杂度。会增加缓冲区的管理复杂度。会增加缓冲区的管理复杂度。所所所所以以以以,设设设设置置置置数数数数据据
133、据据块块块块的的的的长长长长度度度度,需需需需要要要要综综综综合合合合考考考考虑虑虑虑I/OI/O传传传传输输输输性性性性能能能能、I/OI/O缓缓缓缓冲冲冲冲区区区区的的的的管管管管理理理理以以以以及及及及文文文文件件件件访访访访问问问问方方方方式等多种因素。式等多种因素。式等多种因素。式等多种因素。如何将记录组织成数据块如何将记录组织成数据块对对对对于于于于固固固固定定定定长长长长数数数数据据据据块块块块,根根根根据据据据记记记记录录录录长长长长度度度度固固固固定定定定还还还还是是是是可可可可变变变变,以以以以及及及及一一一一条条条条记记记记录录录录是是是是否否否否可可可可以以以以分分分分
134、开开开开存存存存储储储储在在在在不不不不同同同同数数数数据据据据块块块块中中中中,常常常常有有有有三三三三种记录组块方法:种记录组块方法:种记录组块方法:种记录组块方法:固定组块法固定组块法固定组块法固定组块法可变长跨块组块法可变长跨块组块法可变长跨块组块法可变长跨块组块法可变长非跨块组块法可变长非跨块组块法可变长非跨块组块法可变长非跨块组块法固定组块法(固定组块法(Fixedblocking)数据块由若干条固定长度的记录组成,数据块由若干条固定长度的记录组成,一条记录必须完整地存储在一个数据块一条记录必须完整地存储在一个数据块中中数据块中可能会存在一些不能容纳一条数据块中可能会存在一些不能容
135、纳一条完整记录的空间,称为内部碎片。完整记录的空间,称为内部碎片。R1R2R3R4R5R6R7R8图图5.19(a)固定组块固定组块Ri记录记录由于硬件设计产生的间隙由于硬件设计产生的间隙内部碎片内部碎片固定组块法(固定组块法(Fixedblocking)固定组块方法不利于存储空间的利用。固定组块方法不利于存储空间的利用。记录长度固定的顺序文件常采用固定组记录长度固定的顺序文件常采用固定组块法块法 可变长跨块组块法可变长跨块组块法(Variable-lengthspannedblocking)允允允允许许许许记记记记录录录录被被被被划划划划分分分分存存存存储储储储在在在在不不不不同同同同数数数
136、数据据据据块块块块,用用用用指指指指针针针针链链链链接接接接一一一一条条条条跨跨跨跨块块块块存存存存储储储储记记记记录录录录所所所所在在在在的的的的两两两两个个个个数数数数据据据据块块块块,如如如如图图图图5.19(b)5.19(b)5.19(b)5.19(b)所示。所示。所示。所示。R5R7R7R8R6R9R1R3R3R5R2R4图图5.19(b)可变长跨块组块可变长跨块组块Ri记录记录由于硬件设计产生的间隙由于硬件设计产生的间隙内部碎片内部碎片可变长跨块组块法可变长跨块组块法(Variable-lengthspannedblocking)适适适适合合合合于于于于各各各各种种种种长长长长度度
137、度度的的的的文文文文件件件件。但但但但是是是是,这这这这种种种种技技技技术术术术很很很很难难难难实现。实现。实现。实现。另另另另外外外外,采采采采用用用用可可可可变变变变长长长长跨跨跨跨块块块块组组组组块块块块技技技技术术术术时时时时,跨跨跨跨块块块块记记记记录录录录的读的读的读的读/ / / /写会引起两次写会引起两次写会引起两次写会引起两次I/OI/OI/OI/O操作。操作。操作。操作。修改这类文件(增加或删除记录)也非常困难。修改这类文件(增加或删除记录)也非常困难。修改这类文件(增加或删除记录)也非常困难。修改这类文件(增加或删除记录)也非常困难。 可变长非跨块组块法可变长非跨块组块法
138、(Variable-lengthunspannedblocking)可变长跨块组块法的可变长跨块组块法的I/O效率较低,增加效率较低,增加了文件修改难度。了文件修改难度。如果不允许记录跨块存储,则可以有效如果不允许记录跨块存储,则可以有效解决此问题。解决此问题。可变长非跨块组块法的数据块由变长记可变长非跨块组块法的数据块由变长记录组成,不允许一条记录跨越两个数据录组成,不允许一条记录跨越两个数据块存储,如图块存储,如图5.19(c)。图图5.19(c)可变长非跨块组块可变长非跨块组块R1R3R4R2R5R6R7R8Ri记录记录由于硬件设计产生的间隙由于硬件设计产生的间隙内部碎片内部碎片5.8文
139、件共享文件共享文件共享的控制文件共享的控制文件共享的有效控制涉及两个方面:文件共享的有效控制涉及两个方面:同时存取(同时存取(SimultaneousAccess)存取权限(存取权限(AccessRights)控制同时存取控制同时存取允允允允许许许许多多多多个个个个用用用用户户户户同同同同时时时时读读读读文文文文件件件件内内内内容容容容,但但但但不不不不允允允允许许许许同同同同时时时时修改,或同时读且修改文件内容。修改,或同时读且修改文件内容。修改,或同时读且修改文件内容。修改,或同时读且修改文件内容。共共共共享享享享用用用用户户户户之之之之一一一一修修修修改改改改文文文文件件件件内内内内容容
140、容容时时时时,可可可可以以以以将将将将整整整整个个个个文文文文件件件件作作作作为为为为临临临临界界界界资资资资源源源源,锁锁锁锁定定定定整整整整个个个个文文文文件件件件,不不不不允允允允许许许许其其其其他他他他共享用户同时读或写文件。共享用户同时读或写文件。共享用户同时读或写文件。共享用户同时读或写文件。也也也也可可可可以以以以仅仅仅仅仅仅仅仅锁锁锁锁定定定定指指指指定定定定的的的的一一一一条条条条记记记记录录录录,允允允允许许许许其其其其他他他他共共共共享享享享用用用用户户户户读读读读/ /写写写写该该该该文文文文件件件件的的的的其其其其它它它它记记记记录录录录。后后后后者者者者的的的的并并
141、并并发发发发性性性性能更好。能更好。能更好。能更好。控控控控制制制制对对对对文文文文件件件件的的的的同同同同时时时时存存存存取取取取涉涉涉涉及及及及进进进进程程程程的的的的同同同同步步步步与与与与互互互互斥斥斥斥问题问题问题问题控制存取权限控制存取权限控制授权用户以合法的方式访问文件,包括:控制授权用户以合法的方式访问文件,包括:控制授权用户以合法的方式访问文件,包括:控制授权用户以合法的方式访问文件,包括: 无(无(无(无(NoneNone) 用用用用户户户户不不不不知知知知道道道道文文文文件件件件的的的的存存存存在在在在。用用用用户户户户无无无无法法法法获获获获知知知知该该该该文文文文件的
142、目录信息,当然更不会知道文件的内容。件的目录信息,当然更不会知道文件的内容。件的目录信息,当然更不会知道文件的内容。件的目录信息,当然更不会知道文件的内容。 探知(探知(探知(探知(KnowledgeKnowledge) 用用用用户户户户可可可可以以以以检检检检测测测测文文文文件件件件的的的的存存存存在在在在和和和和文文文文件件件件的的的的文文文文件件件件主主主主,还可以向文件主申请增加对该文件的存取权限。还可以向文件主申请增加对该文件的存取权限。还可以向文件主申请增加对该文件的存取权限。还可以向文件主申请增加对该文件的存取权限。执行(执行(执行(执行(ExecutionExecution)
143、用户可以装载并执行程序,但不允许拷贝程用户可以装载并执行程序,但不允许拷贝程用户可以装载并执行程序,但不允许拷贝程用户可以装载并执行程序,但不允许拷贝程序内容。序内容。序内容。序内容。 控制存取权限控制存取权限读(读(Reading)允允许许用用户户读读文文件件内内容容,包包括括拷拷贝贝和和执执行行文文件件。某某些些系系统统严严格格地地将将浏浏览览文文件件内内容容和和拷拷贝贝权权限限分分开开,可可以以控控制制文文件件只只能能被被浏浏览览(显显示示),不不能能被拷贝。被拷贝。追加(追加(Appending)允允许许用用户户向向文文件件添添加加数数据据,通通常常只只能能将将数数据据添添加加到到文文
144、件件尾尾。但但是是,不不能能修修改改或或删删除除文文件件内内容容。例例如如,超超市市收收银银员员只只能能将将新新结结帐帐的的数数据据添添加加到到文件中,不允许其修改或删除已有的数据。文件中,不允许其修改或删除已有的数据。控制存取权限控制存取权限更新(更新(Updating)允允许许用用户户修修改改、删删除除、增增加加文文件件内内容容。包包括括创创建建文文件件、重重写写文文件件的的全全部部或或部部分分内内容容、移移动动文文件件的全部或部分数据等操作。的全部或部分数据等操作。更改权限更改权限(Changingprotection)一一般般只只有有文文件件主主才才能能更更改改共共享享该该文文件件的的
145、其其他他用用户户对对该该文文件件的的存存取取权权限限。有有的的系系统统允允许许文文件件主主将将更更改改文文件件存存取取权权限限赋赋予予其其他他某某个个用用户户,但但必必须须限限制授权用户更改的权限范围。制授权用户更改的权限范围。删除删除(Deletion)允许用户删除文件允许用户删除文件注意注意以以以以上上上上各各各各级级级级存存存存取取取取权权权权限限限限具具具具有有有有层层层层次次次次结结结结构构构构,后后后后一一一一种种种种权权权权限限限限包包包包含含含含前前前前一一一一种种种种及及及及前前前前面面面面各各各各种种种种存存存存取取取取权权权权限限限限。例例例例如如如如,若若若若赋赋赋赋予
146、予予予用用用用户户户户对对对对文文文文件件件件的的的的更更更更新新新新权权权权限限限限,则则则则该该该该用用用用户户户户同同同同时时时时拥拥拥拥有有有有探知、执行、读、追加权限。探知、执行、读、追加权限。探知、执行、读、追加权限。探知、执行、读、追加权限。文文文文件件件件主主主主通通通通常常常常指指指指创创创创建建建建文文文文件件件件的的的的用用用用户户户户。文文文文件件件件主主主主拥拥拥拥有有有有以以以以上上上上所所所所列列列列的的的的全全全全部部部部权权权权限限限限,并并并并且且且且还还还还可可可可以以以以对对对对下下下下列列列列各各各各类类类类用用用用户户户户赋赋赋赋予予予予存存存存取取
147、取取权权权权限限限限:指指指指定定定定用用用用户户户户、用用用用户户户户组组组组和和和和该该该该系系系系统统统统的所有用户。的所有用户。的所有用户。的所有用户。文件共享的实现文件共享的实现实现文件共享的实质就是可以从不同地方打开实现文件共享的实质就是可以从不同地方打开实现文件共享的实质就是可以从不同地方打开实现文件共享的实质就是可以从不同地方打开同一个文件同一个文件同一个文件同一个文件打开文件的首要步骤就是找到文件的目录项,打开文件的首要步骤就是找到文件的目录项,打开文件的首要步骤就是找到文件的目录项,打开文件的首要步骤就是找到文件的目录项,读取文件在外存的起始地址。读取文件在外存的起始地址。
148、读取文件在外存的起始地址。读取文件在外存的起始地址。实现文件共享的方式:利用链接目录项实现法、实现文件共享的方式:利用链接目录项实现法、实现文件共享的方式:利用链接目录项实现法、实现文件共享的方式:利用链接目录项实现法、利用基本文件目录实现法、利用索引节点实现利用基本文件目录实现法、利用索引节点实现利用基本文件目录实现法、利用索引节点实现利用基本文件目录实现法、利用索引节点实现法以及利用符号链实现法等。法以及利用符号链实现法等。法以及利用符号链实现法等。法以及利用符号链实现法等。 链接目录项实现文件共享链接目录项实现文件共享文件目录项中设置一个链接指针,用于指向共文件目录项中设置一个链接指针,
149、用于指向共文件目录项中设置一个链接指针,用于指向共文件目录项中设置一个链接指针,用于指向共享文件的目录项。享文件的目录项。享文件的目录项。享文件的目录项。访问文件时,根据链接指针内容找到共享文件访问文件时,根据链接指针内容找到共享文件访问文件时,根据链接指针内容找到共享文件访问文件时,根据链接指针内容找到共享文件的目录项,读取该目录项中文件起始位置等信的目录项,读取该目录项中文件起始位置等信的目录项,读取该目录项中文件起始位置等信的目录项,读取该目录项中文件起始位置等信息,操作该文件。息,操作该文件。息,操作该文件。息,操作该文件。每当有用户(进程)共享文件时,共享文件目每当有用户(进程)共享
150、文件时,共享文件目每当有用户(进程)共享文件时,共享文件目每当有用户(进程)共享文件时,共享文件目录项中的录项中的录项中的录项中的“ “共享计数共享计数共享计数共享计数” ”加加加加1 1 1 1;当用户不再共享;当用户不再共享;当用户不再共享;当用户不再共享该文件,撤消链接指针时,该文件,撤消链接指针时,该文件,撤消链接指针时,该文件,撤消链接指针时,“ “共享计数共享计数共享计数共享计数” ”减减减减1 1 1 1。只有当共享文件用户数为只有当共享文件用户数为只有当共享文件用户数为只有当共享文件用户数为1 1 1 1时,才能删除共享时,才能删除共享时,才能删除共享时,才能删除共享文件。文件
151、。文件。文件。ROOTBCAA1A2A3B1C1C2C3C31图图5.20链接目录项实现文件共享链接目录项实现文件共享基本文件目录实现文件共享基本文件目录实现文件共享系统设置一张基本文件目录(系统设置一张基本文件目录(系统设置一张基本文件目录(系统设置一张基本文件目录(BFDBFD),其中保),其中保),其中保),其中保存每个文件的目录项,目录项中包含文件的唯存每个文件的目录项,目录项中包含文件的唯存每个文件的目录项,目录项中包含文件的唯存每个文件的目录项,目录项中包含文件的唯一标识符,以及文件的有关说明信息,如文件一标识符,以及文件的有关说明信息,如文件一标识符,以及文件的有关说明信息,如文
152、件一标识符,以及文件的有关说明信息,如文件的物理地址、访问控制和管理等信息。的物理地址、访问控制和管理等信息。的物理地址、访问控制和管理等信息。的物理地址、访问控制和管理等信息。用户的符号文件目录项(用户的符号文件目录项(用户的符号文件目录项(用户的符号文件目录项(SFDSFD)中包含文件名)中包含文件名)中包含文件名)中包含文件名和文件标识符等信息和文件标识符等信息和文件标识符等信息和文件标识符等信息为所有用户设置一张主文件目录为所有用户设置一张主文件目录为所有用户设置一张主文件目录为所有用户设置一张主文件目录(MFD)(MFD),其中,其中,其中,其中记载用户名及用户符号文件目录记载用户名
153、及用户符号文件目录记载用户名及用户符号文件目录记载用户名及用户符号文件目录( (文件文件文件文件) )标识符,标识符,标识符,标识符,该标识符值也由系统自动赋予该标识符值也由系统自动赋予该标识符值也由系统自动赋予该标识符值也由系统自动赋予ID物理位置物理位置User13User2User369主文件目录主文件目录MFDFFD空闲文件目录空闲文件目录F14F2F3510User1的的SFDH15H2H3710User2的的SFDF1F2/H1H2图图5.21利用基本文件目录实现文件共享利用基本文件目录实现文件共享012345678基本文件目录基本文件目录BFD利用索引节点实现文件共享利用索引节点
154、实现文件共享UNIXUNIX操作系统的文件目录项中只包含文件名操作系统的文件目录项中只包含文件名操作系统的文件目录项中只包含文件名操作系统的文件目录项中只包含文件名和指向索引节点的指针,文件的物理地址及其和指向索引节点的指针,文件的物理地址及其和指向索引节点的指针,文件的物理地址及其和指向索引节点的指针,文件的物理地址及其它说明信息保存在索引节点中。它说明信息保存在索引节点中。它说明信息保存在索引节点中。它说明信息保存在索引节点中。可以通过共享文件索引节点来共享文件,即当可以通过共享文件索引节点来共享文件,即当可以通过共享文件索引节点来共享文件,即当可以通过共享文件索引节点来共享文件,即当用户
155、需要共享文件时,在自己的文件目录中新用户需要共享文件时,在自己的文件目录中新用户需要共享文件时,在自己的文件目录中新用户需要共享文件时,在自己的文件目录中新建一个目录项,为共享文件命名建一个目录项,为共享文件命名建一个目录项,为共享文件命名建一个目录项,为共享文件命名( (也可用原名也可用原名也可用原名也可用原名) ),并将索引节点指针指向共享文件的索引节点,并将索引节点指针指向共享文件的索引节点,并将索引节点指针指向共享文件的索引节点,并将索引节点指针指向共享文件的索引节点 图图5.22利用索引节点实现文件共享利用索引节点实现文件共享H1H2H3User2的目录文件的目录文件文件名文件名索引
156、指针索引指针User1的目录文件的目录文件F1F2F3文件名文件名索引指针索引指针I节点节点I节点节点共享索引节点共享索引节点Count物理地址物理地址文件文件I节点节点I节点节点利用利用URL实现文件共享实现文件共享统一资源定位器统一资源定位器统一资源定位器统一资源定位器URL(UniformResourceURL(UniformResourceLocator)Locator)是是是是InternetInternet上用来链接超文本文件的一上用来链接超文本文件的一上用来链接超文本文件的一上用来链接超文本文件的一种方法。种方法。种方法。种方法。它可以链接同一台计算机中的本地文件,也可它可以链接
157、同一台计算机中的本地文件,也可它可以链接同一台计算机中的本地文件,也可它可以链接同一台计算机中的本地文件,也可链接链接链接链接InternetInternet中任何主机上的远程文件。中任何主机上的远程文件。中任何主机上的远程文件。中任何主机上的远程文件。一个完整的一个完整的一个完整的一个完整的URLURL包括访问文件的方法(协议)、包括访问文件的方法(协议)、包括访问文件的方法(协议)、包括访问文件的方法(协议)、文件所在的主机域名、目录路径名和文件名几文件所在的主机域名、目录路径名和文件名几文件所在的主机域名、目录路径名和文件名几文件所在的主机域名、目录路径名和文件名几部份。例如,部份。例如
158、,部份。例如,部份。例如, http:/ 利用利用URL实现文件共享实现文件共享InternetInternet上上上上任任任任何何何何主主主主机机机机的的的的用用用用户户户户都都都都可可可可以以以以通通通通过过过过该该该该URLURL地地地地址址址址链链链链接接接接此此此此文文文文件件件件,使使使使全全全全球球球球计计计计算算算算机机机机用用用用户户户户都都都都可可可可以以以以通通通通过过过过InternetInternet共享该文件。共享该文件。共享该文件。共享该文件。当当当当通通通通过过过过该该该该URLURL地地地地址址址址连连连连接接接接到到到到电电电电子子子子科科科科技技技技大大大
159、大学学学学WWWWWW服服服服务务务务器器器器时时时时,用用用用户户户户计计计计算算算算机机机机就就就就会会会会收收收收到到到到该该该该服服服服务务务务器器器器传传传传输输输输来的来的来的来的index.thmlindex.thml文件。文件。文件。文件。再再再再触触触触发发发发该该该该文文文文件件件件中中中中的的的的“ “中中中中文文文文版版版版” ”超超超超链链链链,该该该该服服服服务务务务器器器器又传来另一个文件,如图又传来另一个文件,如图又传来另一个文件,如图又传来另一个文件,如图5.235.23。利用利用URL实现文件共享实现文件共享利利利利用用用用URLURL共共共共享享享享文文文
160、文件件件件的的的的具具具具体体体体实实实实现现现现方方方方法法法法是是是是,首首首首先先先先将将将将利利利利 用用用用 HTMLHTML( HyperHyperTextTextMarkupMarkupLanguageLanguage)超超超超文文文文本本本本置置置置标标标标语语语语言言言言编编编编写写写写的的的的超超超超文文文文本本本本文文文文件件件件保存在主机的某个目录下。保存在主机的某个目录下。保存在主机的某个目录下。保存在主机的某个目录下。需需需需要要要要链链链链接接接接超超超超文文文文本本本本文文文文件件件件或或或或图图图图像像像像时时时时,可可可可以以以以在在在在浏浏浏浏览览览览器器
161、器器的的的的URLURL地地地地址址址址栏栏栏栏输输输输入入入入一一一一个个个个URLURL地地地地址址址址,或或或或在在在在HTMLHTML文文文文件件件件的的的的相相相相应应应应位位位位置置置置嵌嵌嵌嵌入入入入被被被被链链链链接接接接文文文文件件件件的的的的URLURL地地地地址址址址。具体格式为:具体格式为:具体格式为:具体格式为:AHREF=“URL超链文本及图像超链文本及图像超链文本及图像超链文本及图像利用利用URL实现文件共享实现文件共享当当超超链链被被触触发发时时,用用户户的的计计算算机机将将与与URL指指定定的的服服务务器器建建立立连连接接,然然后后该该服服务务器器将将URL指
162、指定定地地址址的的超超文文本本文文件件传传输输到到用用户户计计算算机机中中,通通过过浏浏览览器器解解释释执执行行超文本文件的逐条语句。超文本文件的逐条语句。用用户户可可以以通通过过URL方方式式反反复复链链接接访访问问Internet上任何地方的任何文件。上任何地方的任何文件。5.9文件保护与安全文件保护与安全文件保护文件保护影影影影响响响响文文文文件件件件安安安安全全全全性性性性的的的的主主主主要要要要因因因因素素素素是是是是数数数数据据据据丢丢丢丢失失失失或或或或非非非非法法法法入入入入侵:侵:侵:侵:非非非非法法法法入入入入侵侵侵侵系系系系统统统统需需需需要要要要通通通通过过过过人人人人
163、工工工工管管管管理理理理及及及及为为为为文文文文件件件件设设设设置置置置访问控制机制进行预防;访问控制机制进行预防;访问控制机制进行预防;访问控制机制进行预防;数数数数据据据据丢丢丢丢失失失失的的的的原原原原因因因因主主主主要要要要有有有有系系系系统统统统硬硬硬硬件件件件或或或或软软软软件件件件故故故故障障障障,如如如如CPUCPU误误误误操操操操作作作作、不不不不可可可可访访访访问问问问的的的的磁磁磁磁盘盘盘盘或或或或磁磁磁磁带带带带、通通通通信信信信故故故故障、软件故障等。障、软件故障等。障、软件故障等。障、软件故障等。磁磁磁磁盘盘盘盘或或或或磁磁磁磁带带带带数数数数据据据据也也也也会会会
164、会因因因因为为为为保保保保存存存存的的的的时时时时间间间间太太太太久久久久,霉霉霉霉变等因素而被丢失。变等因素而被丢失。变等因素而被丢失。变等因素而被丢失。文件保护文件保护解解解解决决决决因因因因数数数数据据据据丢丢丢丢失失失失而而而而导导导导致致致致文文文文件件件件系系系系统统统统不不不不安安安安全全全全的的的的主主主主要要要要方案有系统容错技术以及系统备份等技术。方案有系统容错技术以及系统备份等技术。方案有系统容错技术以及系统备份等技术。方案有系统容错技术以及系统备份等技术。需需需需要要要要保保保保护护护护的的的的对对对对象象象象:硬硬硬硬件件件件如如如如CPUCPU、内内内内存存存存、磁
165、磁磁磁盘盘盘盘驱驱驱驱动动动动器器器器或或或或打打打打印印印印机机机机等等等等,以以以以及及及及软软软软件件件件如如如如进进进进程程程程、文文文文件件件件、数数数数据库表或信号量等。据库表或信号量等。据库表或信号量等。据库表或信号量等。每每每每个个个个对对对对象象象象都都都都有有有有一一一一个个个个唯唯唯唯一一一一的的的的名名名名字字字字,用用用用户户户户通通通通过过过过对对对对象象象象名字来引用对象。名字来引用对象。名字来引用对象。名字来引用对象。文件保护文件保护不不同同对对象象允允许许实实施施的的操操作作各各不不相相同同。例例如如,文文件件可可施施加加读读、写写、执执行行等等操操作作,信号
166、量只能施加信号量只能施加wait()和和signal()操作。操作。因因此此,系系统统为为所所有有对对象象设设置置一一个个允允许许进进程程实实施施操操作作的的操操作作集集,任任何何对对对对象象的的操操作作必必须须符符合合操操作作集集中中的的规规定定,防防止止未未授授权进程访问对象。权进程访问对象。安全性管理安全性管理系统级管理系统级管理用户级管理用户级管理目录级管理目录级管理文件级管理文件级管理系统级安全管理系统级安全管理主主主主要要要要任任任任务务务务,是是是是防防防防止止止止未未未未核核核核准准准准用用用用户户户户进进进进入入入入系系系系统统统统,以以以以保保保保证系统资源不得非法使用。证
167、系统资源不得非法使用。证系统资源不得非法使用。证系统资源不得非法使用。系统级安全管理必须确认用户的合法性。系统级安全管理必须确认用户的合法性。系统级安全管理必须确认用户的合法性。系统级安全管理必须确认用户的合法性。系系系系统统统统管管管管理理理理员员员员首首首首先先先先为为为为该该该该系系系系统统统统的的的的所所所所有有有有合合合合法法法法用用用用户户户户设设设设置置置置一一一一张张张张用用用用户户户户注注注注册册册册表表表表,每每每每个个个个合合合合法法法法用用用用户户户户占占占占一一一一个个个个表表表表项项项项。表表表表项项项项的的的的主主主主要要要要内内内内容容容容有有有有用用用用户户户
168、户名名名名、口口口口令令令令、用用用用户户户户类类类类型型型型、操作时间等。操作时间等。操作时间等。操作时间等。系统级安全管理系统级安全管理用用用用户户户户首首首首先先先先向向向向系系系系统统统统申申申申请请请请合合合合法法法法身身身身份份份份。系系系系统统统统管管管管理理理理员员员员在在在在用用用用户户户户注注注注册册册册表表表表中中中中为为为为之之之之建建建建立立立立一一一一个个个个表表表表项项项项,登登登登记记记记用用用用户户户户名名名名、口令等信息。口令等信息。口令等信息。口令等信息。当当当当用用用用户户户户不不不不再再再再需需需需要要要要使使使使用用用用该该该该系系系系统统统统时时时
169、时,系系系系统统统统管管管管理理理理员员员员负负负负责将该用户在用户注册表中对应的表项删除。责将该用户在用户注册表中对应的表项删除。责将该用户在用户注册表中对应的表项删除。责将该用户在用户注册表中对应的表项删除。若若若若用用用用户户户户所所所所对对对对应应应应的的的的表表表表项项项项被被被被删删删删除除除除,则则则则不不不不能能能能再再再再进进进进入入入入系系系系统,除非重新注册。统,除非重新注册。统,除非重新注册。统,除非重新注册。一个系统中允许同时注册的用户数目是有限的一个系统中允许同时注册的用户数目是有限的一个系统中允许同时注册的用户数目是有限的一个系统中允许同时注册的用户数目是有限的系
170、统级安全管理系统级安全管理当当当当用用用用户户户户成成成成为为为为系系系系统统统统的的的的合合合合法法法法用用用用户户户户之之之之后后后后,还还还还必必必必须须须须登登登登录录录录才能使用系统。才能使用系统。才能使用系统。才能使用系统。登登登登录录录录系系系系统统统统的的的的目目目目的的的的,是是是是通通通通过过过过核核核核实实实实该该该该用用用用户户户户的的的的用用用用户户户户名名名名及口令来验证该用户使用系统的合法性。及口令来验证该用户使用系统的合法性。及口令来验证该用户使用系统的合法性。及口令来验证该用户使用系统的合法性。当当当当系系系系统统统统接接接接收收收收到到到到用用用用户户户户名
171、名名名和和和和口口口口令令令令以以以以后后后后,将将将将其其其其与与与与用用用用户户户户注注注注册册册册表表表表中中中中的的的的各各各各表表表表项项项项逐逐逐逐一一一一比比比比较较较较,只只只只有有有有用用用用户户户户名名名名和和和和口口口口令令令令同同同同时时时时匹匹匹匹配配配配某某某某表表表表项项项项的的的的对对对对应应应应内内内内容容容容时时时时,用用用用户户户户才才才才能能能能登登登登录系统。录系统。录系统。录系统。用户级管理用户级管理:用户分类:用户分类根根根根据据据据用用用用户户户户的的的的性性性性质质质质、要要要要求求求求及及及及访访访访问问问问的的的的文文文文件件件件属属属属性
172、性性性为为为为用用用用户分配户分配户分配户分配“ “文件访问权限文件访问权限文件访问权限文件访问权限” ”。用用用用户户户户级级级级安安安安全全全全管管管管理理理理包包包包括括括括对对对对用用用用户户户户分分分分类类类类和和和和为为为为指指指指定定定定用用用用户户户户分配文件访问权两个方面。分配文件访问权两个方面。分配文件访问权两个方面。分配文件访问权两个方面。不同系统对用户的分类方法各不相同。有的系不同系统对用户的分类方法各不相同。有的系不同系统对用户的分类方法各不相同。有的系不同系统对用户的分类方法各不相同。有的系统将用户分为文件主、同组用户以及其他用户统将用户分为文件主、同组用户以及其他
173、用户统将用户分为文件主、同组用户以及其他用户统将用户分为文件主、同组用户以及其他用户另一些系统则将用户分为超级用户、系统操作另一些系统则将用户分为超级用户、系统操作另一些系统则将用户分为超级用户、系统操作另一些系统则将用户分为超级用户、系统操作员、一般用户和客户。员、一般用户和客户。员、一般用户和客户。员、一般用户和客户。用户级管理用户级管理:文件访问权限:文件访问权限文文件件访访问问权权仅仅赋赋予予系系统统的的合合法法登登录录用用户户,由由于于文文件件目目录录也也作作为为文文件件看看待待,当当为为某某用用户户赋赋予予指指定定目目录录的的访访问问权权时时,该该用用户户便便具具有有对对该该目目录
174、录下下的的所所有有子子目目录录和和文文件件的访问权。的访问权。某某种种访访问问权权也也可可赋赋予予一一个个用用户户组组,使使同同组内各用户都具有这种访问权。组内各用户都具有这种访问权。用户级管理用户级管理:文件访问权限:文件访问权限可定义以下几种文件访问权:可定义以下几种文件访问权:可定义以下几种文件访问权:可定义以下几种文件访问权:建立建立建立建立 允许用户创建新文件,同时打开该文件;允许用户创建新文件,同时打开该文件;允许用户创建新文件,同时打开该文件;允许用户创建新文件,同时打开该文件;删除删除删除删除 打开打开打开打开 读读读读 / / / / 写写写写 查询查询查询查询 修改修改修改
175、修改 父父父父权权权权 允允允允许许许许用用用用户户户户建建建建立立立立、更更更更名名名名或或或或删删删删除除除除子子子子目目目目录录录录,具具具具有某些用户赋予对目录和子目录的访问权。有某些用户赋予对目录和子目录的访问权。有某些用户赋予对目录和子目录的访问权。有某些用户赋予对目录和子目录的访问权。目录级安全管理目录级安全管理目目目目录录录录级级级级安安安安全全全全管管管管理理理理与与与与用用用用户户户户权权权权限限限限无无无无关关关关,是是是是为为为为保保保保护护护护系系系系统中的各种目录而设计的。统中的各种目录而设计的。统中的各种目录而设计的。统中的各种目录而设计的。只有系统内核才具有写目
176、录的权利。只有系统内核才具有写目录的权利。只有系统内核才具有写目录的权利。只有系统内核才具有写目录的权利。用用用用户户户户对对对对目目目目录录录录的的的的读读读读/ / / /写写写写及及及及执执执执行行行行与与与与一一一一般般般般文文文文件件件件的的的的读读读读、写和执行含义不同。写和执行含义不同。写和执行含义不同。写和执行含义不同。 目录的读权限指允许进程读目录目录的读权限指允许进程读目录目录的读权限指允许进程读目录目录的读权限指允许进程读目录 目目目目录录录录的的的的写写写写权权权权限限限限指指指指允允允允许许许许进进进进程程程程请请请请求求求求系系系系统统统统为为为为之之之之建建建建立
177、新目录项,或撤消已有的目录项;立新目录项,或撤消已有的目录项;立新目录项,或撤消已有的目录项;立新目录项,或撤消已有的目录项; 目目目目录录录录的的的的执执执执行行行行权权权权指指指指允允允允许许许许进进进进程程程程访访访访问问问问目目目目录录录录,查查查查找找找找指定文件。指定文件。指定文件。指定文件。目录级安全管理目录级安全管理通通通通常常常常,系系系系统统统统分分分分别别别别为为为为用用用用户户户户和和和和目目目目录录录录独独独独立立立立地地地地指指指指定定定定访访访访问问问问权限。权限。权限。权限。当当当当用用用用户户户户试试试试图图图图访访访访问问问问一一一一个个个个目目目目录录录录
178、时时时时,系系系系统统统统将将将将比比比比较较较较用用用用户户户户访访访访问问问问权权权权和和和和目目目目录录录录访访访访问问问问权权权权,仅仅仅仅当当当当用用用用户户户户访访访访问问问问权权权权同同同同时时时时出出出出现现现现在在在在目目目目录录录录访访访访问问问问权权权权中中中中时时时时,用用用用户户户户才才才才能能能能合合合合法法法法访访访访问问问问目目目目录录录录;否则,用户无法访问目录。否则,用户无法访问目录。否则,用户无法访问目录。否则,用户无法访问目录。文件级安全管理文件级安全管理通过系统管理员或文件主设置文件属性:通过系统管理员或文件主设置文件属性:通过系统管理员或文件主设置文
179、件属性:通过系统管理员或文件主设置文件属性:执行执行执行执行 隐含隐含隐含隐含索引索引索引索引 修改修改修改修改 表示文件自上次备份以来是否修改过;表示文件自上次备份以来是否修改过;表示文件自上次备份以来是否修改过;表示文件自上次备份以来是否修改过;只读只读只读只读 读读读读/ / / /写写写写 共享共享共享共享 指定文件可被多用户指定文件可被多用户指定文件可被多用户指定文件可被多用户( ( ( (进程进程进程进程) ) ) )共享共享共享共享系统系统系统系统 指定系统文件。指定系统文件。指定系统文件。指定系统文件。用户对文件的访问权用户对文件的访问权=用户访问权用户访问权目录访问权目录访问
180、权文件属性文件属性如果文件为只读属性,也许用户访问权如果文件为只读属性,也许用户访问权为读为读/写,但却不能对该文件实施写操作,写,但却不能对该文件实施写操作,即不允许修改或删除该文件。即不允许修改或删除该文件。5.10文件系统的可靠性文件系统的可靠性定期备份文件定期备份文件保护文件系统数据的一致致性保护文件系统数据的一致致性 系统备份系统备份目目目目前前前前常常常常用用用用的的的的系系系系统统统统备备备备份份份份设设设设备备备备有有有有磁磁磁磁带带带带、磁磁磁磁盘盘盘盘和和和和光光光光盘盘盘盘等。等。等。等。由由由由于于于于磁磁磁磁带带带带只只只只适适适适合合合合于于于于存存存存储储储储顺顺
181、顺顺序序序序文文文文件件件件,因因因因此此此此现现现现在在在在主主主主要要要要把把把把它它它它作作作作为为为为后后后后备备备备设设设设备备备备。磁磁磁磁带带带带机机机机往往往往往往往往价价价价格格格格便便便便宜宜宜宜,容量大,但访问速度较慢。容量大,但访问速度较慢。容量大,但访问速度较慢。容量大,但访问速度较慢。可可可可刻刻刻刻录录录录光光光光盘盘盘盘因因因因为为为为价价价价格格格格低低低低,存存存存储储储储容容容容量量量量大大大大,保保保保存存存存时时时时间间间间长长长长,可可可可随随随随机机机机快快快快速速速速访访访访问问问问而而而而日日日日趋趋趋趋成成成成为为为为主主主主要要要要的的的的
182、后后后后备备备备设备。设备。设备。设备。系统备份系统备份磁磁磁磁盘盘盘盘也也也也是是是是主主主主要要要要的的的的后后后后备备备备设设设设备备备备,备备备备份份份份软软软软盘盘盘盘上上上上的的的的文文文文件件件件系系系系统统统统很很很很简简简简单单单单,只只只只需需需需把把把把整整整整个个个个磁磁磁磁盘盘盘盘内内内内容容容容拷拷拷拷贝贝贝贝到到到到一一一一张张张张空软盘上即可。空软盘上即可。空软盘上即可。空软盘上即可。硬硬硬硬盘盘盘盘的的的的容容容容量量量量比比比比软软软软盘盘盘盘容容容容量量量量大大大大得得得得多多多多,可可可可以以以以将将将将一一一一个个个个硬硬硬硬盘盘盘盘的的的的文文文文件
183、件件件系系系系统统统统全全全全部部部部备备备备份份份份到到到到另另另另一一一一张张张张硬硬硬硬盘盘盘盘上上上上保保保保存存存存,保保保保存存存存期期期期通通通通常常常常比比比比磁磁磁磁带带带带长长长长3535年年年年,但但但但其其其其单单单单位位位位容容容容量量量量的的的的存储费用较高。存储费用较高。存储费用较高。存储费用较高。现现现现代代代代计计计计算算算算机机机机系系系系统统统统多多多多采采采采用用用用两两两两个个个个大大大大容容容容量量量量硬硬硬硬盘盘盘盘结结结结构构构构,每个硬盘都划分为两个区:数据区和驱动区每个硬盘都划分为两个区:数据区和驱动区每个硬盘都划分为两个区:数据区和驱动区每
184、个硬盘都划分为两个区:数据区和驱动区 备份区备份区数据区数据区硬盘硬盘0备份区备份区数据区数据区硬盘硬盘1图图5.24双硬盘互为后备系统双硬盘互为后备系统双硬盘数据备份双硬盘数据备份可可可可以以以以采采采采用用用用完完完完整整整整备备备备份份份份方方方方法法法法,即即即即每每每每次次次次备备备备份份份份时时时时,都都都都拷拷拷拷贝数据区的全部内容贝数据区的全部内容贝数据区的全部内容贝数据区的全部内容这种备份方法花费的时间较多。这种备份方法花费的时间较多。这种备份方法花费的时间较多。这种备份方法花费的时间较多。为了减少备份时间,可以采用增量转储方法。为了减少备份时间,可以采用增量转储方法。为了减
185、少备份时间,可以采用增量转储方法。为了减少备份时间,可以采用增量转储方法。定定定定期期期期进进进进行行行行一一一一次次次次完完完完整整整整备备备备份份份份(或或或或称称称称全全全全量量量量转转转转储储储储),如如如如每周一次或每月一次每周一次或每月一次每周一次或每月一次每周一次或每月一次每天只存储自上次拷贝以来修改过的文件每天只存储自上次拷贝以来修改过的文件每天只存储自上次拷贝以来修改过的文件每天只存储自上次拷贝以来修改过的文件文件系统数据的一致性文件系统数据的一致性当当当当一一一一个个个个数数数数据据据据,如如如如商商商商品品品品代代代代码码码码分分分分别别别别存存存存储储储储到到到到多多多
186、多个个个个文文文文件件件件中中中中,如如如如进进进进货货货货文文文文件件件件、入入入入库库库库文文文文件件件件、销销销销售售售售文文文文件件件件等等等等。如如如如果果果果需需需需要要要要修修修修改改改改某某某某商商商商品品品品代代代代码码码码,若若若若漏漏漏漏掉掉掉掉了了了了其其其其中中中中一一一一个个个个文文文文件件件件中中中中的的的的该该该该商商商商品品品品代代代代码码码码未未未未修修修修改改改改,则则则则会会会会出出出出现现现现商商商商品品品品代代代代码码码码不一致的问题。不一致的问题。不一致的问题。不一致的问题。在在在在文文文文件件件件系系系系统统统统中中中中,若若若若在在在在“ “读
187、读读读数数数数据据据据块块块块修修修修改改改改数数数数据据据据写写写写回回回回磁磁磁磁盘盘盘盘” ”这这这这一一一一系系系系列列列列工工工工作作作作流流流流程程程程中中中中,当当当当修修修修改改改改后后后后的的的的数数数数据据据据块块块块未未未未写写写写回回回回磁磁磁磁盘盘盘盘之之之之前前前前,出出出出现现现现系系系系统统统统故故故故障障障障,则则则则文文文文件系统可能出现不一致。件系统可能出现不一致。件系统可能出现不一致。件系统可能出现不一致。如如如如果果果果修修修修改改改改的的的的是是是是文文文文件件件件索索索索引引引引节节节节点点点点信信信信息息息息、目目目目录录录录信信信信息息息息或或
188、或或空闲存储块信息,将带来严重的影响。空闲存储块信息,将带来严重的影响。空闲存储块信息,将带来严重的影响。空闲存储块信息,将带来严重的影响。示例示例1.1.用户用户用户用户A A A A为一个已存在的文件申请增加存储空间为一个已存在的文件申请增加存储空间为一个已存在的文件申请增加存储空间为一个已存在的文件申请增加存储空间2.2.若申请成功,且内存中的磁盘分配表及文件若申请成功,且内存中的磁盘分配表及文件若申请成功,且内存中的磁盘分配表及文件若申请成功,且内存中的磁盘分配表及文件分配表被更新,但此更新信息未写回磁盘分配表被更新,但此更新信息未写回磁盘分配表被更新,但此更新信息未写回磁盘分配表被更
189、新,但此更新信息未写回磁盘3.3.系统故障,重新启动系统故障,重新启动系统故障,重新启动系统故障,重新启动4.4.用户用户用户用户B B B B申请文件存储空间,正好覆盖用户申请文件存储空间,正好覆盖用户申请文件存储空间,正好覆盖用户申请文件存储空间,正好覆盖用户A A A A上上上上一次申请的磁盘空间一次申请的磁盘空间一次申请的磁盘空间一次申请的磁盘空间5.5.用户用户用户用户A A A A访问文件内的被覆盖区访问文件内的被覆盖区访问文件内的被覆盖区访问文件内的被覆盖区用户用户A A的文件数据不一致,一种解决方案:的文件数据不一致,一种解决方案:1.1.锁定磁盘中的磁盘分配表,防止其他用户在
190、锁定磁盘中的磁盘分配表,防止其他用户在锁定磁盘中的磁盘分配表,防止其他用户在锁定磁盘中的磁盘分配表,防止其他用户在本次分配未完成时修改该表;本次分配未完成时修改该表;本次分配未完成时修改该表;本次分配未完成时修改该表;2.2.检索磁盘分配表,查找空闲分区,保证内存检索磁盘分配表,查找空闲分区,保证内存检索磁盘分配表,查找空闲分区,保证内存检索磁盘分配表,查找空闲分区,保证内存中总是有一个磁盘分配表拷贝中总是有一个磁盘分配表拷贝中总是有一个磁盘分配表拷贝中总是有一个磁盘分配表拷贝3.3.分配空闲分区、修改磁盘分配表,将更新数分配空闲分区、修改磁盘分配表,将更新数分配空闲分区、修改磁盘分配表,将更
191、新数分配空闲分区、修改磁盘分配表,将更新数据写回磁盘,修改磁盘上的相应信息;据写回磁盘,修改磁盘上的相应信息;据写回磁盘,修改磁盘上的相应信息;据写回磁盘,修改磁盘上的相应信息;4.4.修改文件分配表,并将更新数据写回磁盘;修改文件分配表,并将更新数据写回磁盘;修改文件分配表,并将更新数据写回磁盘;修改文件分配表,并将更新数据写回磁盘;5.5.将磁盘分配表解锁。将磁盘分配表解锁。将磁盘分配表解锁。将磁盘分配表解锁。文件系统的一致性检查文件系统的一致性检查许多计算机系统都安装并运行一个检验许多计算机系统都安装并运行一个检验程序,随时检查文件系统的一致性,以程序,随时检查文件系统的一致性,以确保文
192、件系统数据的一致可靠。确保文件系统数据的一致可靠。文件系统的一致性检查分为两种:文件系统的一致性检查分为两种: 磁盘块的一致性检查磁盘块的一致性检查 文件的一致性检查文件的一致性检查磁盘块的一致性检查磁盘块的一致性检查磁盘用于存储文件,一个磁盘块要么是空闲状磁盘用于存储文件,一个磁盘块要么是空闲状磁盘用于存储文件,一个磁盘块要么是空闲状磁盘用于存储文件,一个磁盘块要么是空闲状态,存在于空闲分区表或空闲分区链表中;要态,存在于空闲分区表或空闲分区链表中;要态,存在于空闲分区表或空闲分区链表中;要态,存在于空闲分区表或空闲分区链表中;要么是已用状态,分配给了某个文件,存在于文么是已用状态,分配给了
193、某个文件,存在于文么是已用状态,分配给了某个文件,存在于文么是已用状态,分配给了某个文件,存在于文件分配表中。件分配表中。件分配表中。件分配表中。如果一个磁盘块号既出现在空闲分区表中,同如果一个磁盘块号既出现在空闲分区表中,同如果一个磁盘块号既出现在空闲分区表中,同如果一个磁盘块号既出现在空闲分区表中,同时又出现在某个文件的文件分配表中,则表明时又出现在某个文件的文件分配表中,则表明时又出现在某个文件的文件分配表中,则表明时又出现在某个文件的文件分配表中,则表明文件系统磁盘块数据表示不一致。文件系统磁盘块数据表示不一致。文件系统磁盘块数据表示不一致。文件系统磁盘块数据表示不一致。磁盘块的一致性
194、检查磁盘块的一致性检查为了检查磁盘块的一致性,可以建立两张表:为了检查磁盘块的一致性,可以建立两张表:为了检查磁盘块的一致性,可以建立两张表:为了检查磁盘块的一致性,可以建立两张表:一一一一张张张张表表表表统统统统计计计计磁磁磁磁盘盘盘盘上上上上每每每每个个个个盘盘盘盘块块块块在在在在文文文文件件件件中中中中出出出出现现现现的的的的次次次次数,称为数,称为数,称为数,称为数据块计数表数据块计数表数据块计数表数据块计数表;另另另另一一一一张张张张表表表表统统统统计计计计每每每每个个个个盘盘盘盘块块块块在在在在空空空空闲闲闲闲分分分分区区区区表表表表、空空空空闲闲闲闲分分分分区区区区链链链链表表表
195、表或或或或位位位位示示示示图图图图等等等等数数数数据据据据结结结结构构构构中中中中的的的的出出出出现现现现次次次次数数数数,称称称称为为为为空闲块计数表空闲块计数表空闲块计数表空闲块计数表。每每每每一一一一个个个个磁磁磁磁盘盘盘盘块块块块在在在在两两两两张张张张表表表表中中中中分分分分别别别别设设设设置置置置一一一一个个个个计计计计数数数数器器器器,其初始值为其初始值为其初始值为其初始值为0 0 0 0 。磁盘块的一致性检查磁盘块的一致性检查检检检检验验验验程程程程序序序序进进进进行行行行磁磁磁磁盘盘盘盘块块块块一一一一致致致致性性性性检检检检查查查查时时时时,首首首首先先先先检检检检查查查查
196、磁磁磁磁盘盘盘盘上上上上所所所所有有有有文文文文件件件件的的的的数数数数据据据据块块块块,每每每每当当当当检检检检查查查查到到到到一一一一个个个个数数数数据据据据块块块块时时时时,将将将将数数数数据据据据块块块块计计计计数数数数表表表表中中中中对对对对应应应应该该该该块块块块的的的的计计计计数数数数器器器器加加加加1 1 1 1。然然然然后后后后,检检检检验验验验程程程程序序序序检检检检查查查查空空空空闲闲闲闲分分分分区区区区表表表表、空空空空闲闲闲闲分分分分区区区区链链链链表表表表或或或或位位位位示示示示图图图图等等等等数数数数据据据据,查查查查找找找找所所所所有有有有未未未未使使使使用用用
197、用的的的的空空空空闲闲闲闲存存存存储块。储块。储块。储块。当当当当找找找找到到到到一一一一个个个个空空空空闲闲闲闲存存存存储储储储块块块块时时时时,将将将将它它它它在在在在空空空空闲闲闲闲块块块块计计计计数数数数表中对应的计数器加表中对应的计数器加表中对应的计数器加表中对应的计数器加1 1 1 1。磁盘块的一致性检查磁盘块的一致性检查如如果果文文件件系系统统的的数数据据是是一一致致的的,则则对对于于每每个个磁磁盘盘块块,要要么么在在数数据据块块计计数数表表中中的的计计数数器器值值为为1,要要么么在在空空闲闲块块中中的的计计数数器器值为值为1,如图,如图5.25(a)所示。所示。01234567
198、891011121314151111000010011111磁盘块号磁盘块号数据块数据块0000111101100000空闲块空闲块(a)正常正常磁盘块的一致性检查磁盘块的一致性检查数数据据不不一一致致的的异异常常情情况况,可可能能有有如如图图5.25(b)、(c)或或(d)三种。三种。01234567891011121314151111000010011111磁盘块号磁盘块号数据块数据块0000011101100000空闲块空闲块(b)存储块信息丢失存储块信息丢失01234567891011121314151111000010011111磁盘块号磁盘块号数据块数据块0000121101100
199、000空闲块空闲块(c)空闲表中重复登记某个存储块空闲表中重复登记某个存储块01234567891011121314152111000010011111磁盘块号磁盘块号数据块数据块0000111101100000空闲块空闲块(d)数据块被重复登记数据块被重复登记文件的一致性检查文件的一致性检查通过检查目录系统的一致性来实现。通过检查目录系统的一致性来实现。通过检查目录系统的一致性来实现。通过检查目录系统的一致性来实现。建建建建立立立立一一一一张张张张文文文文件件件件计计计计数数数数器器器器表表表表,每每每每个个个个文文文文件件件件对对对对应应应应其其其其中中中中的的的的一个计数器,统计文件的索
200、引节点个数。一个计数器,统计文件的索引节点个数。一个计数器,统计文件的索引节点个数。一个计数器,统计文件的索引节点个数。检检检检验验验验程程程程序序序序从从从从根根根根目目目目录录录录开开开开始始始始查查查查找找找找,每每每每当当当当在在在在目目目目录录录录中中中中找找找找到到到到一一一一个个个个索索索索引引引引节节节节点点点点号号号号时时时时,便便便便将将将将该该该该计计计计数数数数器器器器表表表表中中中中相相相相应应应应文件的计数器加文件的计数器加文件的计数器加文件的计数器加1 1。将将将将文文文文件件件件计计计计数数数数器器器器表表表表中中中中各各各各文文文文件件件件索索索索引引引引节节
201、节节点点点点计计计计数数数数器器器器值值值值逐逐逐逐个与文件索引节点中的链接计数个与文件索引节点中的链接计数个与文件索引节点中的链接计数个与文件索引节点中的链接计数CountCount比较。比较。比较。比较。索引节点中的链接数大于计数器表中的索引节点中的链接数大于计数器表中的对应值对应值索引节点中的链接数小于计数器表中的索引节点中的链接数小于计数器表中的对应值对应值解决方法:将索引节点中的解决方法:将索引节点中的Count值更新值更新为计数器表中的对应值。为计数器表中的对应值。本章小结本章小结文件系统、文件文件系统、文件文件系统、文件文件系统、文件 文件目录(内容、操作、结构)文件目录(内容、
202、操作、结构)文件目录(内容、操作、结构)文件目录(内容、操作、结构) 文件的逻辑组织与访问文件的逻辑组织与访问文件的逻辑组织与访问文件的逻辑组织与访问 有结构文件与文件系统有结构文件与文件系统有结构文件与文件系统有结构文件与文件系统 堆堆堆堆文文文文件件件件、顺顺顺顺序序序序文文文文件件件件、索索索索引引引引顺顺顺顺序序序序文文文文件件件件、索引文件、直接(哈希)文件索引文件、直接(哈希)文件索引文件、直接(哈希)文件索引文件、直接(哈希)文件文件的物理组织文件的物理组织文件的物理组织文件的物理组织 存储空间的管理存储空间的管理存储空间的管理存储空间的管理 存储空间分配技术:连续、链接、索引存
203、储空间分配技术:连续、链接、索引存储空间分配技术:连续、链接、索引存储空间分配技术:连续、链接、索引 空空空空闲闲闲闲空空空空间间间间的的的的管管管管理理理理:空空空空闲闲闲闲分分分分区区区区表表表表、空空空空闲闲闲闲分分分分区链表、索引、位示图区链表、索引、位示图区链表、索引、位示图区链表、索引、位示图逻辑文件与物理数据块之间的转换逻辑文件与物理数据块之间的转换逻辑文件与物理数据块之间的转换逻辑文件与物理数据块之间的转换 字节流、记录与数据块之间的转换字节流、记录与数据块之间的转换字节流、记录与数据块之间的转换字节流、记录与数据块之间的转换 记录如何组成数据块记录如何组成数据块记录如何组成数据块记录如何组成数据块 文件共享文件共享文件共享文件共享 文件共享的控制:同时存取、存取权限文件共享的控制:同时存取、存取权限文件共享的控制:同时存取、存取权限文件共享的控制:同时存取、存取权限 文件共享的实现文件共享的实现文件共享的实现文件共享的实现文件保护与安全文件保护与安全文件保护与安全文件保护与安全 文件保护文件保护文件保护文件保护 安全性管理安全性管理安全性管理安全性管理文件系统的可靠性文件系统的可靠性文件系统的可靠性文件系统的可靠性 系统备份系统备份系统备份系统备份 文件系统数据的一致性文件系统数据的一致性文件系统数据的一致性文件系统数据的一致性