第2章.文件和文件系统

《第2章.文件和文件系统》由会员分享,可在线阅读,更多相关《第2章.文件和文件系统(138页珍藏版)》请在文档大全上搜索。
1、 操作系统本身也是一个重要的软件资源,而且往往是一个庞大的资源,占用几十KB甚至几千KB的存储量。因此,它们不能全部常驻内存,必须留出较大的内存空间给用户作业。所以相当大的一部分操作系统程序存放在能直接存取的磁盘存储器上,需要用到某部分功能时,才把相应的一种程序装入内存。为便于管理和装入,操作系统的这些程序也是以文件形式存储的。由此可见,操作系统本身也要求具备文件管理的功能。 文件系统是现代操作系统中不可缺少的组成部分。本章将介绍文件、文件系统、文件的存储、检索、使用、共享和保护等问题。l2.1.1 文件和文件系统l2.1.2 文件的分类 为了方便用户使用软件资源,现代计算机操作系统提供了管理
2、文件的软件机构,即文件系统。文件系统既包括操作系统中用于文件管理的那一部分程序,也包括运行这些程序所需的各种数据结构。 从用户使用角度来看,文件系统主要是实现对文件的“按名存取”。当用户要求系统保存一个已命名的文件时,文件系统按照一定的格式把此文件存放到文件存储器的适当地方。用户需要时,系统根据用户提供的文件名,又能够从文件 存储器中找出所需要的文件或文件的某些信息。如果将此称为文件系统的外特性的话。那么文件系统应具有如下特点:(1) 使用简单方便使用简单方便。用户不必考虑文件在文件存储器中是如何分配的也不必考虑文件存放的物理位置,用户只要知道文件名和诸如访问权限等文件特征信息,就可使用文件。
3、存取文件的所有物理操作均由文件系统解决。(2) 文件共享文件共享。为了节省文件存储空间,更为了多个用户共同完成对某一文件的操作,文件系统应提供文件共享功能。并且,文件系统对多个用户要求同时使用一个文件的情况,应提供并发控制功能,以免造成错误。(3) 安全可靠安全可靠。文件系统应提供各种安全保护措施,防止文件信息受到有意或无意的破坏。例如,有些文件可规定为“只读不写”。如有人企图修改它,文件系统通过存取控制验证后拒绝执行。另外,用户可以规定他的文件只能被他自己和几个被授权的用户使用。若事先未获准的用户要使用此文件,则文件系统将认为是非法的而对其拒绝。 从系统管理角度来看,文件系统主要是实现文件存
4、储空间的组织、分配以及文件的存储、检索、共享、保护等管理。如果将此为文件系统的内特性的话,那么文件系统应解决下列主要问题:文件的结构及有关的存取方法、文件的目录结构和目录检索、文件存储空间的管理、文件的共享、存取控制和系统的可靠性。 2.按文件的逻辑结构来分(1)记录式有结构文件;(2)无结构文件。 3.按文件的物理结构来分 (1)连续文件; (2)串联文件;(3)索引文件; 4.按文件存取方式来分 (1)顺序存取的文件; (2)随机存取的文件; (3)直接存取的文件; (4)按关键字存取的文件; 5.按文件的保护级别来分 (1)只读文件;(2)读写文件; (3)可执行文件;(4)不保护文件。
5、 以上从文件的属性、逻辑结构、物理结构、存取方式、操作保护等不同角度来看待一个文件,反映出文件的特征。还有其他的文件分类法,如按文件保护时间长短,分为临时文件、永久文件和档案文件;按文件信息的流向,分为输入文件、输出文件和输入输出文件等等。不再一一列举。l2.2.1 文件的逻辑结构l2.2.2 文件的物理结构l2.2.3 文件的存取方法l2.2.4 文件存储空间管理录结构并不是必须的,因为这些文件本来就是顺序的字符流或字节序列,没有必要把它们硬化分为记录。 UNIX系统采用的是流式文件结构。顺便指出,一些慢速字符设备也可被看作是一个“文件”。这是因为,在这些设备上传输的信息是一组顺序出现的字符
6、序列。严格地讲,是把这些字符设备传输的信息看成是一个流式文件。正因为如此,按照文件组织和处理方式,UNIX将文件分成普通文件,目录文件和特殊文件。其中,特殊文件即指字符设备。磁盘结构下面介绍几种常用的文件物理结构。(1)连续文件 这是一种最简单的物理文件结构,一个在逻辑上是连续的文件信息被存放到连续的物理块中。例如,文件A,其长度为2 KB,若物理块的长度为512,则需占4 块,它们分别被分配到0,1,2,3 四个相邻的物理中。如图2.5所示。文件目录物理块号0文件长度4文件A说明 0 1 2 3 4图2.1 连续文件结构 连续文件的优点连续文件的优点是简单,一旦知道文件存储的起始块号和文件长
7、度,就能很快进行存取,速度较快。 缺点缺点是文件的长度不能动态增加,因为文件的末尾之后可能已分配给别的文件了。另外,文件的最后一个物理块不一定正好用满,出现了不能利用的存储空间“零头”。连续文件物理结构常用于长度已固定的系统文件。(2)串联文 串联文件的物理块是不连续的,也不必是顺序排列的,在每个物理块的尾部设置了一个指针或称连接字,指向下一个物理块。它的第1 个物理块由文件说明项中指出,最末一个物理块的连接指针为1,表示文件存储结束。这种物理结构的文件也常称为连接文件。如图2.2所示。文件A说明文件目录物理块号1010151537372525 -1 图2.2 串联文件结构 串联结构的优点串联
8、结构的优点是文件可以动态增长,不要求连续分配,调整连接指针很容易插入或删除一个记录。 缺点缺点是一般只适宜顺序存取而不适宜随机存取,为了得到后面块信息,必须从头开始读取前面所有的块,才得到后面的块的物理地址。(3)索引文件 索引文件结构是实现不连续分配的另一种方案。这种结构要求为每个文件建立一张索引表,每一表目指出文件记录所在的物理块号,索引表位置则由文件说明项指出。图2.3给出了索引文件结构的示意图。 10 15 37 25文件目录表指针 10 15 37 25 图2.3 索引文件结构 在无结构的流式文件中,顺序存取和随机存取都有类似上述的情况,只不过每次存取之前必须指明要读/写的字符(或字
9、节)数目。顺序存取时,每次读写完毕,位置指针自动地加上读/写信息的长度,然后由此指针开始读/写下一段文件信息。 除了这两种最常用的存取方法之外,还有一些其他的存取方法。例如,在数据系统中,可根据记录中的某个记录项的内容(通常称为键或关键字)来编址,从而通过一个或多个键,而不是根据记录的编号或地址来存取一个记录。这种方法称为“按键存取”。 文件存取方法密切地依赖于文件的物理结构和文件存储设备的特性。目前,文件存储设备主要是磁带和磁盘。关。但实际是,磁盘读写之前,磁头要移到指定磁道,指定扇区要旋转到磁头之下,这些时间或多少都与读写之前的磁头的当前位置有关。只是相对于磁带来说,磁盘上找到所需记录位置
10、的时间是很短的,大体上也是相同的。软磁盘价格便宜,便于装卸和携带,主要作为微型机的文件存储器,也可作为脱机存档设备。硬磁盘容量大、速度快,是大、中、小型机和高档微型机的主要文件存储器。 文件的物理结构与设备特性、存取方法之间的关系概括于表2.1中 存储设备 磁 盘 磁 带 文件结构 连续 串联 索引 连续 存取方法 顺 序 、随机 顺序 顺序、随机 顺序 表2.1 存储设备、文件结构和存取方法之间的关系 1(2) 空闲块链 将文件存储空闲空间按串联文件的方式组织,形成一个空闲块链。当需要分配空闲块时,则从空闲块链的链首摘取所需的若干块,链首指针相应后移。当删除文件释放文件存储块时,则把这些块挂
11、接到空闲块的链尾上。 UNIX操作系统对空闲文件存储块的管理采用空闲块链和空闲块映象图相结合的方法,即组链方式。它以50个空闲块为一组,每组中各块的块号登记在这一组的第1 个空闲块内。同时各组的第一个空闲块又构成链表队列。第一组的块数可能不足50个,它的组内块数和各块号登记在本文件的专用块内。系统初启时,专用块复制到内存。申请一空闲块时,首先分配专用块中登记空闲块,全部分配完,再摘取空闲块组链中的下一组,其块号复制到内存后再分配。(3) 位示图 位示图亦盘图之称,用它来反映磁盘文件存储器中存储块的使用情况。这是由若干字节组成的一张表,每一位对应一个物理块。每位为“0”或“1”分别表示对应的物理