《操作系统》第6章文件系统1文库课件

上传人:尘*** 文档编号:242964694 上传时间:2024-09-13 格式:PPT 页数:30 大小:150KB
返回 下载 相关 举报
《操作系统》第6章文件系统1文库课件_第1页
第1页 / 共30页
《操作系统》第6章文件系统1文库课件_第2页
第2页 / 共30页
《操作系统》第6章文件系统1文库课件_第3页
第3页 / 共30页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,*,操作系统原理,Principles of Operating System,1,第6章 文件系统,文件的定义,我们将文件定义为:文件是具有文件名的一组逻辑上具有完整意义的信息集合。文件名是一个字符串。,文件是可以是字符的集合,这是一种无结构的文件,称为流式文件。目前UNIX,MS-DOS均采用这种文件形式;文件是也可以是记录的集合,例如每个学生的登记表可视为一个记录,包括学生姓名,出生年月,性别,籍贯等信息项,所有学生登记表组成一个学生文件。记录是一组相关数据项的集合,用于描述一个对象某方面的属性。它由若干个基本数据项组成。数据项是为了刻画一个客观对象的某一方面状态所用信息,它是数据组织中可以命名的最小逻辑数据单位,即原子数据,又称为数据元素或字段。,2,文件的类型,1.按文件的用途分类:,系统文件:有关操作系统及其它系统程序的信息所组成的文件。这类文件对用户不直接开放,只能通过系统调用为用户服务。,例如:,/unix,库文件:是指系统为用户提供的各种标准函数,标准过程和实用程序等。用户只能使用这些文件,而无权对其进行修改。,例如:C语言、FORTRAN子程序库存放在子目录下 *.LIB,/lib/,/usr/lib/,用户文件:用户文件: 由用户的信息组成的文件,如源程序文件,数据文件等。这种文件的使用和修改权均属于用户。,例如:*.c,*.for,*.f,*DBF,*.OBJ,2.按文件的性质分类,普通文件:指一般的用户文件和系统文件。,目录文件:指由文件目录项组成的文件。,特别文件:有的系统把设备作为文件统一管理和使用,并为区别起见,把设备称为特别文件。,3,3.按文件的操作保护分类,只读文件:只允许授权用户进行读操作,但不允许写操作。标记为:r。,读写文件:允许授权用户进行读写操作。标记为:rw。,执行文件:允许授权用户调用执行,但不允许读写操作。标记为e。,不保护文件:不作任何操作限制。,4.按使用情况分类,临时文件:用于系统在工作过程中产生的中间文件,一般有暂存的目录,正常工作情况下,工作完毕会自动删除,一旦有异常情况往往会残留不少临时文件,永久文件:指一般受系统管理的各种系统和用户文件,经过安装或编辑、编译生成的文件,存放在软盘、硬盘或光盘等外存上。,档案文件:系统或一些实用工具软件包在工作过程中记录在案的文挡资料文件,以便查阅历史挡案。,5.按存取的物理结构分类,顺序(连续)文件:文件中的纪录,顺序地存储到连续的物理盘块中,顺序文件中所记录的次序,与它们存储在物理介质上存放的次序是一致的。,链接文件:文件中的纪录可存储在并不相邻接的各个物理块中,通过物理块中的链接指针组成一个链表管理,形成一个完整的文件,又称指针串连文件或直接存取文件。,索引文件:文件中的纪录可存储在并不相邻接的各个物理块中,纪录和物理块之间通过索引表项按关键字存取文件,通过物理块中的索引表管理,形成一个完整的文件。,4,6.按文件的逻辑结构分类,有结构文件:由若干个记录所构成的文件,也称为记录式文件。,无结构文件:这是直接由字符序列所构成的文件,也祢为流式文件。,7.按文件中的数据形式分类,源文件:由源程序和数据构成的文件,一般是由美国信息交换标准码(ASCII)、EBCD码或汉字编码组成。,目标文件:由源程序经过相应的计算机语言编译程序编译,但尚未经过链接程序链接的目标代码所形成的文件,后缀名为“.obj”(DOS系统)或“.o”(UNIX或Linux操作系统)。,可执行文件:源程序经编译后所产生的目标代码,再由链接程序链接后所形成的文件。通常可执行文件使用的后缀名是“.exe”。,5,6.1.3 文件命名,不同操作系统对文件的命名规则各有不同,文件名称的长度因操作系统不同而不同。例如,MSDOS文件系统(FATl2/16)使用8.3命名规则,该规则规定:文件名分两部分,中间用圆点“.”加以分隔。前一部分为用户命名的文件名,后一部分为扩展名。NTFS文件系统文件名可以达到255个字符。而EXT2文件系统(一种常用UNIX文件系统)则没有长度限制。,FATl2/16文件系统不区分文件名的大小写;而EXT2文件系统则加以区分。例如,chap123.htm、CHAP123.HTM、Chap123.htm和Chap123.Htm等文件名在FATl2/16中表示同一文件,而在EXT2中则表示不同的文件。FATl2/16文件系统只能使用ASCII字符命名文件;而NTFS文件系统则可以使用更为广泛的字符(如Unicode)。,MS-DOS和Windows操作系统对不同的后缀有特定的解释;而UNIX操作系统则没有统一的规定。例如,在MS-DOS和Windows中,prog.c为C语言源文件,prog.CXX为C+源文件,prog.doc为Word文件,prog.hlp为帮助文件,prog.htm为HTML文档,prog.ini为配置文件等。,6,6.1.5 文件系统,文件系统是操作系统中统一管理信息资源的一种系统软件,管理文件的存取、检索、更新,提供安全可靠的共享和保护手段,并且提供用户使用文件系统的接口。文件系统包含文件管理程序和所管理的全部文件(文件和目录)。文件和目录保存外存空间。因此,文件系统管理的对象是文件、目录和文件存储空间。,7,第一层:用户接口。包括命令行接口、图形接口和程序接口。根据用户对文件的存取要求,把不同的系统调用加工改造成不同的内部调用格式。,第二层:符号文件系统。将第一层提供的用户文件名转换成系统内部名。,第三层:基本文件系统。根据文件的内部名找到文件的说明信息,包括存取控制表、文件结构及第一个物理块地址等。,第四层:存取控制验证。主要功能是根据存取控制信息和用户访问要求验证文件访问的合性,从而实现文件的共享、保护和保密。,第五层:逻辑文件系统。主要功能是根据文件的逻辑结构找到要进行操作的数据的相对块号。对于流式文件,只要把用户指定的逻辑地址按块长换算成相对块号即可;对于记录式文件,应先将记录号转换成逻辑地址,再将其转换成相对块号。,第六层:物理文件系统。根据文件的物理结构将相对块号转换成物理地址。,第七层:文件存储设备分配策略模块和设备策略模块。分配策略模块实现对空闲存储块的管理,包括分配、释放和组织。设备策略模块主要是把物理块号转换成相应文件存储设备所要求的地址格式,如磁盘的柱面号、磁道号和扇区号。然后,根据具体的操作要求及必要的参数准备输入/输出命令。,第八层:I/O调度及控制,由设备处理程序执行具体的读写操作。,8,3.文件系统的功能,实现文件的按名存取。按名存取是文件系统最基本的实现目标。,管理文件的存储空间,实施文件存储空间的分配与回收。,实现文件信息的共享,允许不同目录的文件重名,并提供文件的保护和保密措施,文件的安全措施。,为用户提供一个方便使用的接口,向用户提供有关信息,提供系统维护的操作命令,提供对文件和目录的操作命令对等。,9,常用文件系统,典型的文件系统如下:,sysv:SystemV/386、Coherent和Xenix文件系统。,Minix:最老的UNIX文件系统之一,可靠强,有些没有时间标记,文件名最长30个字符,每个文件系统最多管理64MB外存。,EXT:EXT2的老版,不向上兼容。难于用新版安装程序安装,大部分人都改用EXT2。,EXT2:Linux最为常用的文件系统,设计易于向后兼容,所以新版的文件系统代码无需改动就可以支持已有的文件系统。,NFS:网络文件系统,允许多台计算机之间共享文件系统,易于从所有这些计算机上存取文件。,HPFS:IBM OS2文件系统。,FAT:FAT文件系统于1982年开始应用于MS-DOS中。经过了MS-DOS、Windows 3.x、Windows 9x、Windows NT、Windows 2000、Windows XP和OS/2等操作系统的不断改进,现已包含FATl2、FATl6和FAT32等。,NTFS:NTFS是微软为了配合Windows NT的推出而设计的文件系统,为系统捉供了极大的安全性和可靠性,它是当今世界上最出色的文件系统之一。,10,6.2文件的结构,文件的逻辑结构,流式文件,流式文件是一种无结构的文件,基本信息单位是字节(Byte),是由字符流构成的文件。其长度是所含字节的数量。对大量的源程序、可执行文件、库函数等,所采用的就是无结构的文件形式,即流式文件。其长度以字节为单位。对流式文件的访问,则是采用读写指针来指出下一个要访问的字符。,系统不对文件进行格式处理。这种文件的优点是节省存储空间,无需额外的说明和控制信息。,11,记录式文件,记录式文件是一种结构文件,由若干个记录组成,文件中的记录可按顺序编号为记录1、记录2、记录n。如果文件中所有记录的长度相等,则称为定长记录文件。若文件中的记录长度不相等,则称为变长记录文件。,相对流式文件而言,记录式文件的使用不很方便,尤其是变长记录文件。另外在文件中还要有说明记录长度的信息,这就浪费了一部分存储空间。因此许多操作系统(如UNIX等)都已取消了记录式文件。,12,6.2.2 文件的物理结构,文件的物理结构(file physical structure)是指文件在物理存储介质上的结构,它与存储介质的存储特性有关,它对文件的存取方法有较大的影响。文件的存储设备通常划分为大小相等的物理块,物理块是分配及传输信息的基本单位。物理块的大小与设备有关,与逻辑记录大小无关,因此一个物理块中可以存放若干个逻辑记录,一个逻辑记录也可以存放在若干个物理块中。为了有效利用物理存储设备和便于系统管理,一般把文件信息划分为与物理块大小相等的逻辑块。,13,1.顺序结构顺序结构也叫连续结构,它将一个文件在逻辑上连续的信息存放在外存上连续物理块中,采用顺序结构存放的文件称为连续文件。连续文件的信息逻辑相邻,物理也相邻。,顺序结构的主要优点如下:,简单。顺序访问速度快。,所需的磁盘寻道次数和寻道时间最少。,顺序结构的主要缺点如下:,文件不易动态增长。不利于文件插入和删除操作。,外存存在碎片问题。,14,2.链接结构这是一种非连续的结构,它将一个文件逻辑上连续的信息存放在外存上不连续物理块中,为了系统能方便地找到后续信息,存放文件信息的每一物理块中有一个指针,指向下一个物理块的位置,这个指针的长度由物理设备的容量决定,通常放在该物理块的开头或结尾,利用指针将同一个文件的物理块链接起来。采用链接结构存放的文件称为链接文件。,链接结构的主要优点如下:,提高了磁盘空间利用率,解决了碎片问题。,有利于文件插入和删除。有利于文件动态扩充。,链接结构的主要缺点如下:,存取速度慢,不适于随机存取。链接指针占用一定的空间。,可靠性问题,如指针出错。更多的寻道次数和寻道时间,15,3.文件分配表FAT,扇区就是在各圆形磁道上的段,象一个个的扇区就构成了磁盘的物理存储块,扇区通常的容量是512byte。簇是扇区的大小整数倍,像512B、1K、2K、4K、8K、16K、32K、64K。实际中通常不超过32K。之所以簇为单位而不以扇区为单位进行磁盘的分配,是因为当分区容量较大时,采用大小为512B的扇区管理会增加FAT表的项数,对大文件存取增加消耗,文件系统效率不高。,文件分配表(File Allocation Table,FAT)是链接结构的一个变形,如图6-4所示,将盘块中的链接字按盘块号的顺序集中起来,构成盘文件映射表/文件分配表,利用FAT可方便地进行随机存取。,在FAT文件系统中块称为簇。一个磁盘分区能分为多少簇则FAT就有多少表项。,16,4.索引结构索引结构是一种离散结构,一个文件的信息存放在若干不连续物理块中,系统为每个文件建立一个专用数据结构,即索引表,索引表就是文件信息所在的逻辑块号和与之对应的物理块号的对照表。采用索引结构存放的文件称为索引文件。索引表的查找策略对文件系统的性能影响很大。,索引结构的主要优点如下:,保持了链接结构的优点,又解决了其缺点。,即能顺序存取,又能随机存取。,满足了文件动态增长、插入删除的要求。,能充分利用外存空间。,索引结构的主要缺点如下:索引表本身带来了系统开销。,17,如图6-8所示,UNIX文件系统采用的是混合多级索引结构。并依据文件的大小来确定索引表的大小。如果文件很大,那么相应的索引表也就很长,通常索引表也放在外存中。UNIX的文件分为小型、中性、大型、巨型四种类型。,18,1.顺序存取,顺序存取是文件存取的最简单方法,即按文件信息的逻辑顺序依次存取。当打开文件时,文件的存取指针指向第一个信息单位,如第一个字节或第一个记录,每存取一个信息单位存取指针加1指向下一个信息单位,如此类推。文件顺序存取是按从前到后的顺序对文件进行读写操作,有的存储设备(如磁带)只能支持顺序访问。,2.随机存取,文件随机存取,也称为直接存取,是可以按任意的次序对文件进行读写操作。有的存储设备支持随机存取,如磁盘支持随机存取和顺序存取。根据地址(如记录编号)直接存取文件的任何部分(记录),而无需存取其前面的部分(记录),每次存取操作时必须先确定存取的位置。,19,文件的存取方法、存储设备和物理结构三者之间的关系如表6-1所示。,存储设备,物理结构,存取方法,磁盘,顺序结构,顺序随机存取,链接结构,顺序存取,索引结构,顺序随机存取,磁带,顺序结构,顺序存取,表6-1 存取方法、存储设备和物理结构三者之间的关系,20,6.3目录管理,通过目录管理方便文件的查找,每个文件系统都有目录,目录也被称为文件夹。所谓目录,就是把相关的文件控制块组织在一起,就构成了文件目录。由于目录本身也是被查找和修改的对象,因此常常把目录当做一种特殊的文件,这样有关文件的操作也可用于目录的操作。为了实现对文件目录的管理,通常将文件目录以文件的形式保存在外存,这个文件就叫目录文件。构成文件目录的项目称为目录项,即文件控制块FCB。,目录应具有如下几个功能:,实现文件按名存取。,提高文件检索速度。,允许文件重名。,便于文件共享。,21,文件控制块,文件有文件头和文件体两部分组成,文件体是指文件的数据部分,而文件头则是文件属性信息的数据结构,用于描述和控制文件,也叫文件控制块(File Control Block,FCB)。文件控制块是操作系统为管理文件而设置的数据结构,文件控制块是文件存在的标志,FCB就是文件目录中的一个目录项。,基本信息,文件名、文件类型、文件组织、文件标识数。,地址信息,起始地址、文件大小、分配大小。,存取控制信息,文件的访问者、访问权限、存取控制内容。,使用信息,创建日期、读时间、修改时间、备份时间。,22,6.3.3 索引节点,文件名,I节点指针,将文件控制块中的文件名与其它属性值分离,,文件名和索引节点指针构成文件目录项。,这里除了文件名,文件控制块的其他控制信息我们称为I节点。,将文件名从文件控制块中分离出来,其余控制信息构成了文件的I节点。将所有文件的I节点集中存放于磁盘上的I节点区,称之为磁盘I节点。当文件被打开时,要将磁盘I节点的内容拷贝到内存I节点中,内存I节点增加以下内容:,I节点编号:用于标识内存I节点。,状态:指示I节点是否上锁或被修改。,访问计数:每当有一进程要访问此I节点时,将该访问计数加1,访问完成再减1。,文件所属文件系统的逻辑设备号。,链接指针:设置有分别指向空闲链表和散列队列的指针。,请读者注意文件控制块、索引节点和文件目录项三者之间的联系与区别?,23,6.3.4 文件目录结构,1.单级目录,单级目录最为简单,在整个文件系统中仅仅建立和维护一张总目录,系统上的所有文件都在该目录中占有一项。当存取文件时,用户只要给出文件名,系统通过查找这个目录,找到文件名相对应的项就可获得该文件的属性信息。在通过访问权限验证后,就可以根据目录项中提供的文件物理地址对文件实施存取操作。在建立文件时,只要在目录表中申请一个空闲目录项,并填入文件名及其相关属性信息即可。同样,在删除文件时,只要把相应的目录项标记为空闲项,并回收空间即可。,但是存在以下明显的缺点:,不允许文件重名。文件查找速度慢。,24,2.二级目录,二级目录可以解决文件重名,系统建立二级目录,即把系统中的目录分为一个主文件目录(Master File Directory,MFD)和多个用户文件目录(User File Directory,UFD)。在多用户系统中,一般每个用户都拥有一个属于自己的UFD,而MFD则存储着各个UFD的信息,说明各个UFD的名称、物理位置等。用户必须给出用户文件目录名和文件名,具有以下优点:,提高了文件检索速度。,二级目录结构较为简单,这是因为它们被不同的目录空间所分隔。二级目录也有其缺点,不能反映现实世界中多层次的关系。,25,3.树型目录,为了更好地反映系统中众多文件的不同用途,为了方便查找文件,可以把二级目录加以推广,而形成多级层次目录。多级目录也称为树型目录,树型目录产生于UNIX操作系统,被现代操作系统广泛采用。,在多级层次目录中,有一个根目录和许多子目录。子目录不但可以包含文件,而且还可以包含下一级的子目录,这样依次推广下去就形成了树型层次目录。,26,树型目录具有以下优点:,提高文件检索速度。,允许文件重名。不但不同用户可以使用同名文件,同一用户也可使用同名文件。,利用多级层次结构关系,使用户文件的逻辑结构清晰,把不同类型和不同用途的文件分类,可以更方便地制定保护文件的存取权限,有利于文件的保护。,树型目录也有其缺点,如不能直接支持文件或目录的共享。,在整个目录树中,节点有两种类型:一类节点有子节点,这种节点为目录文件节点;还有一类节点是没有子节点的,这类节点称为叶子节点或树叶节点。用于存放数据信息文件。,27,4.无环结构目录,无环结构目录是树型目录的推广,有些教材称为带有链接的树型目录。为了允许文件或目录可以被不同的目录所共享,可以把树型目录的层次关系加以推广,而形成无环结构目录,无环结构目录被现代操作系统广泛采用。在无环结构目录中,不同的子目录可以共享一个文件或子目录,而不是各自拥有文件或子目录的副本。,28,无环结构目录的优点:,用户的逻辑结构清晰,有利于文件分类,便于管理和保护。,提高文件检索速度。,树型目录结构允许用户在不同子目录中命名相同的文件名,但不允许在同一子目录中重名,从而解决了重名问题。,能进行存取权限的控制。,支持文件或目录的共享,缺点是实现比较复杂。在无环结构目录中,一个文件可以有多个绝对路径名,也就是不同的文件名可以指向同一个文件,只有当相同的文件的所有链接都被删除时文件才会真正从磁盘上被清除。需要考虑如下问题:一是当需要遍历整个文件系统不希望多次访问共享文件,二是关于文件的删除的问题。,29,5.路径名,在树型目录结构中一个文件的标识是路径名和文件名,而是从根目录开始,经过一个或多个中间节点,到达某个叶节点存在一条路径,我们称这条路径为该文件的路径名。路径名是由到达某个叶节点所经历的子目录名以及分隔符组成,通常使用分隔符“/”或“”,例如/user/vc/ccc.c。,在树型目录结构中,文件路径名一般较长,而用户总是局部地使用文件,为了方便起见,可把正在使用目录指定为当前目录。查询时,若路径名以“/”或“”开头,则从根目录开始查找,否则从当前目录开始查找。用目录树组织文件系统时,常用的方法有两种。,第一种是绝对路径,对任何一个文件,从根目录开始,到该文件所经历的子目录名连成一个路径名,这个路径名以分隔符“/”或“”开头,再以分隔符将每两个子目录名分隔开,形成此文件的路径名称为绝对路径名。例如/user/vc/ccc.c。,第二种是相对路径,从当前目录到指定文件所经过的子目录名就构成了相对路径。例如工作目录是user,上面文件ccc.c的相对路径为vc/ccc.c。,设置绝对路径可以从文件系统根目录开始查找文件或目录,并且文件重名时路径不同而不会造成检索错误。但绝对路径名太长,用户使用不方便,在指定的当前目录下,相对路径名会很短,用户使用就方便了。,30,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > PPT模板库


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!