操作系统原理PrincipleofOperatingSystem精品课程2020年9月14日星期一兰州理工大学计算机与通信学院第六章文件系统6.1概述6.2文件结构6.3文件目录6.4文件系统的实现6.5辅存空间管理6.6实例:Windows文件系统本章主要内容操作系统原理PrincipleofOperatingSystem精品课程2020年9月14日星期一兰州理工大学计算机与通信学院在现代计算机系统中,用户的程序和数据,操作系统自身的程序和数据,甚至各种输入输出设备都是以文件形式出现的。尽管文件有多种存储介质可以使用,如硬盘、软盘、光盘、闪存、记忆棒等,但是,它们都以文件的形式出现在操作系统的管理者和用户面前。所以,文件管理是操作系统中一项重要的功能。文件系统就是操作系统中统一管理信息资源的一种软件。它管理文件的存储、检索、更新,提供安全可靠的共享和保护手段,并且方便用户使用。操作系统原理PrincipleofOperatingSystem精品课程2020年9月14日星期一兰州理工大学计算机与通信学院第六章文件系统6.1概述6.2文件结构6.3文件目录6.4文件系统的实现6.5辅存空间管理操作系统原理PrincipleofOperatingSystem精品课程2020年9月14日星期一兰州理工大学计算机与通信学院6.1概述6.1.1文件的基本概念6.1.2文件系统模型6.1.3文件分类6.1.4文件属性6.1.5文件操作操作系统原理PrincipleofOperatingSystem精品课程2020年9月14日星期一兰州理工大学计算机与通信学院文件是具有名字且在逻辑上具有完整意义的信息项的有序序列,如图所示。这里所说的“有序序列”是指以用户观点,在逻辑上具有顺序性,实际上,文件在辅存上物理存放时由于要考虑空间利用率的问题,因而不一定是连续的。编号:01kn-1信息项1信息项2…信息项k…信息项n读/写指针操作系统原理PrincipleofOperatingSystem精品课程2020年9月14日星期一兰州理工大学计算机与通信学院文件系统的主要功能有:⑴文件的按名存取;⑵对文件目录的管理;⑶地址映射;⑷提供合适的文件存取方法;⑸文件的共享、保护和保密等。操作系统原理PrincipleofOperatingSystem精品课程2020年9月14日星期一兰州理工大学计算机与通信学院6.1概述6.1.1文件的基本概念6.1.2文件系统模型6.1.3文件分类6.1.4文件属性6.1.5文件操作操作系统原理PrincipleofOperatingSystem精品课程2020年9月14日星期一兰州理工大学计算机与通信学院最低层是对象及其属性说明,这是由操作系统所提供的数据名称、数据集合单位所组成的层次;中间层是对对象进行操控和管理的软件集合,它是处于应用程序与操作系统之间的应用软件与系统软件;最高层是文件系统提供给用户的接口。操作系统中处理文件的部分称为文件系统。它分为三个层次:操作系统原理PrincipleofOperatingSystem精品课程2020年9月14日星期一兰州理工大学计算机与通信学院表6-2文件系统模型文件系统接口对对象操纵和管理的软件集合逻辑文件系统基本I/O管理程序(文件组织模块)基本文件系统(物理I/O层)I/O控制层(设备驱动程序)对象及其属性说明操作系统原理PrincipleofOperatingSystem精品课程2020年9月14日星期一兰州理工大学计算机与通信学院6.1概述6.1.1文件的基本概念6.1.2文件系统模型6.1.3文件分类6.1.4文件属性6.1.5文件操作操作系统原理PrincipleofOperatingSystem精品课程2020年9月14日星期一兰州理工大学计算机与通信学院⑴按用途可分为:系统文件、库文件和用户文件。⑵按存储方式可分为:ASCII文件和二进制文件。⑶按保存期可分为:临时文件和永久文件。⑷按访问方式可分为:只读文件、只执行文件和可读/写文件。⑸按数据形式分为:源文件、目标文件和可执行文件。操作系统原理PrincipleofOperatingSystem精品课程2020年9月14日星期一兰州理工大学计算机与通信学院6.1概述6.1.1文件的基本概念6.1.2文件系统模型6.1.3文件分类6.1.4文件属性6.1.5文件操作操作系统原理PrincipleofOperatingSystem精品课程2020年9月14日星期一兰州理工大学计算机与通信学院为了能对系统内的各个文件实施管理以及保护,操作系统除了要保存文件的信息内容外,还要存储一些与文件相关的数据,我们称之为文件属性(FileAttributes)。⑴名称:文件是有名字的,以方便用户通过文件名来访问该文件。通常文件名是一个字符串组成。⑵标识符:在文件系统内标识文件的唯一符号,通常是数字。这个信息对用户是不可访问的。⑶类型:类型设置可以提供系统在访问时用以识别不同数据类型的文件。⑷位置:此属性为一个指向磁盘实际存储位置的指针,让系统知道要到磁盘中的哪个位置去访问所需要的数据。操作系统原理PrincipleofOperatingSystem精品课程2020年9月14日星期一兰州理工大学计算机与通信学院⑸大小:当数据被存储在磁盘中时需要足够的存储空间,大小属性就记录着该文件在磁盘上所占有的存储空间大小(以字节、字或块为单位),有时该属性也包括文件可允许大小的最大值。⑹保护:在多用户多任务操作系统中,为了文件系统的安全,一般都会在文件上加入保护机制及访问控制的设置。⑺拥有者:一般来说,文件都由建立它的用户所拥有,而文件的拥有者可以对文件的保护加以设置。⑻日期信息:文件中会记录几个与文件相关的日期与时间信息,包含文件的建立时间、最后修改时间和最后访问时间等。这些信息主要用于文件的保护、安全和使用跟踪。操作系统原理PrincipleofOperatingSystem精品课程2020年9月14日星期一兰州理工大学计算机与通信学院6.1概述6.1.1文件的基本概念6.1.2文件系统模型6.1.3文件分类6.1.4文件属性6.1.5文件操作操作系统原理PrincipleofOperatingSystem精品课程2020年9月14日星期一兰州理工大学计算机与通信学院对文件的操作可分为两类:一是对文件自身的操作,主要实现文件的创建、删除、复制等;二是对记录的操作,例如在文件中查找一个记录。⑴创建文件⑵读文件⑶写文件⑷删除文件⑸属性更改⑹截断文件操作系统原理PrincipleofOperatingSystem精品课程2020年9月14日星期一兰州理工大学计算机与通信学院第六章文件系统6.1概述6.2文件结构6.3文件目录6.4文件系统的实现6.5辅存空间管理操作系统原理PrincipleofOperatingSystem精品课程2020年9月14日星期一兰州理工大学计算机与通信学院6.2文件结构6.2.1文件、记录与文件控制块6.2.2文件的逻辑结构6.2.3文件的物理结构操作系统原理PrincipleofOperatingSystem精品课程2020年9月14日星期一兰州理工大学计算机与通信学院文件结构指的是文件的逻辑结构和物理结构。文件的逻辑结构指文件的外部组织形式,是用户所看到的文件的组织形式;文件的物理组织指文件的内部组织形式,是文件在物理存储设备上的存储形式,所以又称文件的存储结构。操作系统原理PrincipleofOperatingSystem精品课程2020年9月14日星期一兰州理工大学计算机与通信学院记录是一组相关数据项的集合,用于描述一个对象某方面的属性。一个记录通常包含哪些数据项,取决于需要描述对象的哪个方面。在这些记录中,为了能唯一的标识一个记录,必须在记录的各个数据项中,确定出一个项或几个项,这些项的集合称为关键字。文件系统为了能有效管理一个文件,必须建立一个与文件一一对应的数据结构,用来保存文件名及文件的各种属性,这个数据结构称为文件控制块(FileControlBlock,FCB)。操作系统原理PrincipleofOperatingSystem精品课程2020年9月14日星期一兰州理工大学计算机与通信学院文件控制块的主要信息包括三方面:⑴基本信息:文件标识、文件逻辑结构、文件物理结构⑵存取控制信息:文件主存取权限、授权者存取权限、文件口令等⑶使用信息:文件日期、文件使用信息操作系统原理PrincipleofOperatingSystem精品课程2020年9月14日星期一兰州理工大学计算机与通信学院6.2文件结构6.2.1文件、记录与文件控制块6.2.2文件的逻辑结构6.2.3文件的物理结构操作系统原理PrincipleofOperatingSystem精品课程2020年9月14日星期一兰州理工大学计算机与通信学院文件的逻辑组织形式有两种:流式和记录式。前者是非结构式的,后者是结构式的。1.流式文件流式文件中构成文件的基本单位是字节,即流式文件是具有符号名并在逻辑上具有完整意义的字节序列。编号:01kn-1字节字节…字节…字节读/写指针操作系统原理PrincipleofOperatingSystem精品课程2020年9月14日星期一兰州理工大学计算机与通信学院2.记录式文件记录式文件顾名思义就是由记录构成的文件,即记录式文件是具有符号名并在逻辑上具有完整意义的记录序列。编号:01kn-1记录记录…记录…记录读/写指针操作系统原理PrincipleofOperatingSystem精品课程2020年9月14日星期一兰州理工大学计算机与通信学院根据记录的长度可分为定长和不定长两类:⑴定长记录:指文件中所有记录都是相同的。所有记录中的各数据项,都处于记录中相同位置,具有相同的顺序及相同的长度,文件的长度用记录数目表示。⑵变长记录:指文件中各记录的长度不相同。包括:记录中包含的数据项数目可能不同。或者是数据项本身的长度不定。用户对记录式文件的访问是以记录为基本单位的。每个文件的内部有一个读/写指针,通过系统调用可以将该读/写指针固定到文件的某一个位置,以后的读/写系统调用将从该指针所确定的位置开始。操作系统原理PrincipleofOperatingSystem精品课程2020年9月14日星期一兰州理工大学计算机与通信学院6.2文件结构6.2.1文件、记录与文件控制块6.2.2文件的逻辑结构6.2.3文件的物理结构操作系统原理PrincipleofOperatingSystem精品课程2020年9月14日星期一兰州理工大学计算机与通信学院用于保存文件的物理设备是划分为块的,文件的物理结构就是要确定如何将记录或字节保存在存储型设备的物理块中。一般在确定文件的物理结构时应当考虑以下几个因素:⑴记录格式:文件记录的格式分为定长和变长两种。⑵空间开销:指除保存文件内容之外所需的额外开销。它包括辅存开销以及当文件使用时所需的内存开销。⑶存取速度:包括顺序存取速度、按号随机存取速度以及按键随机存储速度。⑷长度变化:指文件长度的动态增加和动态减少,尤其是文件长度的动态增加。操作系统原理PrincipleofOperatingSystem精品课程2020年9月14日星期一兰州理工大学计算机与通信学院1.顺序结构顺序结构又称为连续结构,采用这种结构,一个文件占用若干个连续的物理块,其首块号及块数记录于文件控制块FCB中。…块28块29块30块31…FCB……首块号=28块数=4磁盘空间操作系统原理PrincipleofOperatingSystem精品课程2020年9月14日星期一兰州理工大学计算机与通信学院2.链接结构链接结构又称串联结构。采用这种结构,一个文件占有若干个不连续的存储块,各块之间以指针相连。首块号=28块数=4……块28块30块46块45FCB……磁盘空间操作系统原理PrincipleofOperatingSystem精品课程2020年9月14日星期一兰州理工大学计算机与通信学院3.索引文件采用索