六、文件管理
1.引言
计算机系统中还有另一类资源是软资源。软资源包括各种系统程序、各种实用程序、各种应用程序、各种应用领域的程序,也包括大量的文档材料。每一种资源本身都是具有一定逻辑意义的、相关信息的集合。在操作系统中它们以文件形式存储。大多数应用中,文件是最重要的元素,每个应用总要使用和产生数据。一般从文件中输入数据,其产生的数据也存入文件而长期储存,供以后使用。系统的重要作用之一是能快速处理大量信息,因此数据的组织、存取和保护是操作系统必须提供的一个重要的功能。文件系统是操作系统中组织、存取和保护数据的一个重要部分。
(1)文件的概念文件是信息的一种组织形式,是存储在辅助存储器上的具有标识名的一组信息集合。它可以是有格式的,也可以是无格式的。与文件相关的概念有:数据项、记录、文件和数据库。数据项是数据的基本单位,一个数据项有一个值,数据项可能是定长的也可能是可变长度的。记录是相关数据项的集合,与数据项类似,记录的长度可能是定长的,也可能是可变长度的。文件是记录的集合,文件是一个实体,被用户或应用程序按名字访问,为了安全,每一文件都有访问控制约束。数据库是相关数据的集合,数据元素之间有直接的联系,这些联系是在设计时为若干个不同的应用而设计的。数据库本身可由若干文件组成。
(2)文件系统操作系统的文件系统包括两个方面:一方面包括负责管理文件的一组系统软件,另一方面包括被管理的对象———文件。文件系统的主要目标是提高存储器的利用率,接受用户的委托实施对文件的操作。为此要解决的主要问题是:管理辅助存储器,实现文件从名字空间到辅存地址空间的转换,决定文件信息的存放位置、存放形式和存取权限,实现文件和目录的操作,提供文件共享能力和安全设施,提供友好的用户接口。
(3)文件类型文件有多种分类方法,这是根据文件的性质和用途区分的。①按文件的用途可以分为系统文件、库文件和用户文件等。②按文件的信息流向可以分为输入文件、输出文件和输入输出文件等。③按文件的组织形式可以分为普通文件、目录文件和特殊文件等。特殊文件是UNIX系统采用的技术,是把所有的输入输出设备都视作文件(特殊文件)。特殊文件的使用形式是与普通文件相似的。④按文件的安全属性可分为只读文件、读写文件、可执行文件和不保护文件等。
2.文件的结构和组织
文件的结构是指文件的组织形式,从用户观点所看到的文件组织形式,称为文件的逻辑结构;从实现观点考察文件在辅助存储器上的存放方式,常称为文件的物理结构。
(1)文件的逻辑结构文件的逻辑组织是为了方便用户的使用,一般文件的逻辑结构可以分为两种:无结构的字符流文件和有结构的记录文件,后者也称为有格式文件。记录文件由记录组成,即文件内的信息划分成多个记录,以记录为单位组织和使用信息。记录文件有顺序文件、索引顺序文件、索引文件和直接文件。
①顺序文件:许多文件是顺序文件。顺序文件的记录定长,记录中的数据项的类型长度与次序固定,一般还有一个可以惟一标识记录的数据项,称为键(key),记录是按键值的约定次序组织。顺序文件常用于批处理应用,对于查询或更新某个记录的请求的处理性能不佳。
②索引顺序文件:索引顺序文件是基于键的约定次序组织的,而且维护键的索引和溢出区域。键的索引也可以是多级索引。索引顺序文件既适用于交互方式应用,也适用于批处理的方式应用。
③索引文件:索引顺序文件是基于记录的一个键数据项组织的,而许多应用需按照别的数据项访问文件,为此,常采用索引文件方法,即对主文件中的记录按需要的数据项(一个或几个)建索引,索引文件本身是顺序文件组织。
④直接文件:直接文件又称哈希(Hash)文件,记录以它们在直接访问存储设备(DASD)上的物理地址直接(随机)访问。直接文件常用于需要高速访问文件而且每次访问一条记录的应用中。
(2)文件的物理结构文件的物理结构侧重于提高存储器的利用效率和降低存取时间。文件的存储设备通常划分为大小相同的物理块,物理块是分配和传输信息的基本单位。文件的物理结构是指文件在存储设备上的存储方法。文件的物理结构涉及文件存储设备的组块策略和文件分配策略,决定文件信息在存储设备上的存储位置,常用的文件分配策略有:
①顺序分配(连续分配)。这是最简单的分配方法,在文件建立时预先分配一个连续的物理块集,然后,按照逻辑文件中的信息(或记录)顺序,依次把信息(或记录)顺序存储到物理块中。这样,只需知道文件在文件存储设备上的起始位置和文件长度,就能进行存取,这种分配方法适合于顺序存取,在连续存取相邻信息时,存取速度快。其缺点是在文件建立时必须指定文件的信息长度,以后不能动态增长,一般不宜用于需要经常修改的文件。
②链接分配(串联分配)。这是按单个物理块逐个进行的。每个物理块中(一般是最后一个单元)设有一个指针,指向下一个物理块的地址,这样,所有的物理块都被链接起来,形成一个链接队列。在建立链接文件时,不须指定文件的长度,在文件的说明信息中,只需指出该文件的第一个物理块块号,链接文件的文件长度可以动态的增长,只需调整物理块间的指针就可以插入或删除一个信息块。链接分配的优点是可以解决存储器的碎片问题,提高存储空间利用率。由于链接文件只能按照队列中的链接指针顺序查找,因此,搜索效率低,一般只适用于顺序访问,不适用于随机存取。
③索引分配。这是另一种对文件存储不连续分配的方法。采用索引分配方法的系统,系统为每个文件建立一张索引表,索引表中每一表项指出文件信息所在的逻辑块号和与之对应的物理块号。索引分配既可以满足文件动态增长的要求,又可以方便而迅速地实现随机存取。这是因为索引表中含有全部逻辑块号和物理块号之间的对应关系。对一些大的文件,索引表的大小会超过一个物理块,就会发生索引表的分配问题。一般采用多级(间接索引)技术,这时在由索引表指出的物理块中存放的不是文件信息,而是存放文件信息的物理块地址。这样,如果一个物理块能存储n个物理块地址,则一次间接索引,可寻址的文件长度将变成n×n块,对于更大的文件可以采用二级间接索引,甚至三级间接索引技术(如UNIX系统)。索引分配既适用于顺序存取,也适用于随机存取。索引分配的缺点是索引表增加了存储空间的开销。另外,在存取文件时需要访问存储设备两次,一次是访问索引表,另一次是根据索引表提供的物理块号访问文件信息,为了提高效率,一种改进的方法是,在对某个文件进行操作之前,预先把索引表调入主存(如Open命令),这样,文件的存取就能直接从在主存的索引表中确定相应的物理块号,从而只需要访问一次磁盘来源:www.examda.com
3.文件访问方法
用户**对文件的访问(读写)来完成对文件的查找、修改、删除和添加等操作。常用的访问方法有两种,顺序访问和随机访问。
(1)顺序访问顺序访问是按照文件的逻辑地址顺序访问。对无结构的字符流文件,顺序访问反映当前读写指针的变化,在访问完一段信息之后,读写指针自动加上这段信息的长度。
(2)随机访问随机访问方法又分成两种:①一是根据记录的编号访问文件中的记录,或者根据读写命令把读写指针移到所需要的信息段开始处。②另一种是按键访问文件中的记录。文件的访问依赖于存放文件的存储设备的特性,也依赖于文件的分配策略。例如,磁带是典型的顺序访问设备,磁盘则是典型的随机访问设备。
4.文件存储设备管理
文件存储设备管理也就是操作系统的辅存管理,是要有效的进行存储空间的管理。由于文件存储设备是分成许多大小相同的物理块,并以块为单位交换信息,因此,文件存储设备的管理实质上是对空闲块的组织和管理问题。有3种不同的空闲块管理方法,它们是位图法、链接法和索引法。
(1)位图法位图法使用一个向量描述整个磁盘,向量的每一位表示一个物理块的状态,如0表示空闲块,而1表示该块已使用。位图法易于找到一个或连续几个空闲块,此法适合每一种文件分配方法,另外,位图法本身很小,易于全部放入主存。
(2)链接法链接法使用链表把空闲块组织在一起,当申请者需要空闲块时,分配程序从链首开始摘取所需的空闲块。反之,管理程序把回收的空闲块逐个的挂入队尾,这个方法适用于每一种文件分配方法。空闲块的链接方法可以是如上述的按释放的先后顺序链接,也可以是按空闲块区(连续n个空闲块)的大小顺序链接。后者有利于获得连续的空闲块的请求,但在分配请求和回收空闲块时系统开销多一点。
(3)索引法类似于文件分配方法,索引法把空闲块作为一个文件并采用索引技术。为了提高效率,索引可以基于空闲块区而不是仅仅基于单个物理块。这样,磁盘上每一个空闲块区都对应于索引表中一个条目,这个方法能有效地支持每一种文件分配方法。
5.文件控制块和文件目录
(1)文件控制块文件控制块是系统在管理文件时所必需的控制信息的数据结构,是文件存在的惟一标志,也称文件描述词,简记为FCB。FCB的内容包括相应文件的基本属性,大致可以分成4个部分:①基本信息:如文件名、文件类型、文件组织等;②保护信息:如口令、所有者名、保存期限、访问权限等;③位置信息:如存储位置、文件长度等;④使用信息:如时间信息、最迟使用者等。
(2)文件目录文件控制块的集合称为文件目录,文件目录也被组织成文件,常称为目录文件。文件目录结构形式有一级目录结构、二级目录结构和多级目录结构。
①一级目录结构:文件系统中只有一个目录文件的目录结构称为一级目录结构。其中,每一表项是一个文件控制块,对应于一个文件。一级目录结构易于实现,管理简单。但当系统中文件数增多时,查找时间较长,也会发生文件名重复(重名)的问题。
②二级目录结构:文件系统将目录分为两级,就形成了二级目录结构。这时,第一级目录称为主目录,主目录表项记录用户名及相应用户目录的存储位置。第二级是用户目录,以顺序表形式存放该用户文件的文件控制块。二级目录虽然都组织成顺序表,由于都不会很长,查找时间快,而且各个用户只要**自己的文件名称不重复就不会发生重名问题。对文件的共享和文件的保护也比一级目录结构好。
③多级目录结构:如果将二级目录的级数增加,就形成了多级目录。也称为树型目录结构。在多级目录结构中,常常将第一级目录作为系统目录,称为根目录(树的根节点)。目录树中的非叶节点指出目录文件,非目录文件一定由叶节点指出。叶节点也可能指出目录文件,即空目录。在多级目录结构中,从根出发到任何一个叶节点有且只有一条路径,该路径的全部节点名构成一个全部路径名,又称绝对路径名。为查找一个非目录文件就使用它的全路径名,多级目录结构更加完善了文件结构的查找范围,更好地解决了文件的重名问题,增强了文件的共享和保护措施。
6.文件的使用
(1)工作目录也称当前目录。在多级目录结构的文件系统中,文件的全路径名可能较长,也会涉及多次磁盘访问,为了提高效率,操作系统提供设置工作目录的机制,每个用户都有自己的工作目录,任一目录节点都可以被设置为工作目录。一旦某个目录节点被设置成工作目录,相应的目录文件有关内容就会被调入主存,这样,对以工作目录为根的子树内任一文件的查找时间会缩短,从工作目录出发的文件路径名称为文件的相对路径名。文件系统允许用户随时改变自己的工作目录(如命令CD)。
(2)文件的使用一般文件系统提供一组专门用于文件、目录的管理。如目录管理、文件控制和文件存取等命令。①目录管理命令:如建立目录、显示工作目录、改变目录、删除目录(一般只可删除空目录);②文件控制命令:如建立文件、删险文件、打开文件、关闭文件、改文件名、改变文件属性;③文件存取命令:如读写文件、显示文件内容、复制文件等。
(3)文件共享和安全文件的共享是指不同的用户使用同一文件。文件的安全是指文件的保密和保护,即限制未授权用户使用或破坏文件。文件的共享可以采用文件的绝对路径名(或相对路径名)共享同一文件。一般的文件系统,要求用户先打开文件,再对文件进行读写,不再使用时关闭文件。若两个用户可以同时打开文件,对文件进行存取,这称为动态文件共享。文件的安全管理措施常常在系统级、用户级、目录级和文件级上实施。①系统级:用户需注册登记、并配有口令,每次使用系统时,都需要进行登录(login),然后输入用户口令(password),方能进入系统;②用户级:系统对用户分类并限定各类用户对目录和文件的访问权限;③目录级:系统对目录的操作权限作限定,如读(R)、写(W)、查找(X)等;④文件级:系统设置文件属性来控制用户对文件的访问,如只读(RO)、执行(X)、读写(RW)、共享(Sha)、隐式(H)等。对目录和文件的访问权限可以由建立者设置。除了限定访问权限,还可以**加密等方式进行保护。
正在阅读:
2017年全国计算机等级考试四级复习纲要:文件管理10-28
幼儿园大班班主任新学期寄语09-24
我不想长大作文500字10-21
2019年湖北研究生调剂申请条件公布03-30
2019入党发展对象思想汇报1500字:2019发展对象思想汇报1500字02-18
2022年陕西注册环保工程师考试准考证打印入口(已开通)11-02
安徽2019年6月大学德语六级成绩查询时间及查分入口【8月21日】03-24
2017年鸡宝宝小名大全女孩-2017鸡年宝宝小名乳名大全09-18
年夜饭作文1000字07-25
家里的“真空包装袋”作文600字10-04