文件系统的基本概念
文件系统的主要目的是实现对文件的按名存储
文件系统与存储管理密切相关,它们共同为用户使用文件提供方便。
文件系统中文件被按照名字存取是为了方便用户使用
文件系统采用多级目录结构后,对于不同用户的文件,文件名可以相同,也可以不同
在文件系统中可命名的最小数据单位是文件
文件代表了计算机系统中的软件资源
不是文件按信息的流向分类的文件类型。记录文件
用磁带作为文件存贮介质时,文件只能组织成顺序文件
文件存储介质的物理单位是卷
把文件按组织形式进行分类,可以分为普通文件,目录文件、特殊文件等三类。
对文件可有多种分类方法,请列出其中的三种。
对文件可有多种分类方法,例如:按组织方式可分成逻辑文件、物理文件: 按设备类型可分成磁盘文件、磁带文件等:按保护级别可分成只读文件、读写文件、执行文件等。
简述按文件的用途分类?
(1)系统文件:操作系统和各种系统应用程序和数据所组成的文件。
(2)库函数文件:标准子程序及常用应用程序组成的文件允许用户对其进行读取、执行,但不允许对其进行修改。如C语言子程序库、FORTRAN 子程序库等。
(3)用户文件:用户文件是用户委托文件系统保存的文件。
一卷存储介质可以被分成若干个块,能用来存放一个或多个文件;一个文件可以由多个记录组成,这样的文件被称为记录式文件,一个记录可占用存储介质上的一块,或一块中可以存放多个记录。
什么是文件?
文件可以被解释为一组带标识的、在逻辑上有完整意义的信息项的序列。这里所谓“标识”是指文件名,“信息项"构成了文件的内容。
物理记录是主存储器与存储设备之间进行信息交换的物理单位。对每一卷存储介质的存储空间可以划分成若干个信息存储区域,其中每个连续的区域称为一个块,或称为一个物理记录。每次启动存储设备时,可以对一个或几个物理记录(块)中的信息进行存取。
文件的逻辑结构和物理结构
(链接文件 )物理结构不利于对文件的随机存取
逻辑文件是(从用户观点看 )的文件组织形式。
字符序列组成,文件内的信息不再划分结构,这是指流式文件
数据库文件的逻辑结构形式是记录式文件
文件的逻辑记录的大小随使用要求变化的
(连续文件)物理结构文件不便于文件的扩充。常用于存放大型的系统文件;不利于文件长度动态增长
文件系统为每个文件另建立一张指示逻辑记录和物理记录之间的对应关系表, 此表和文件本身构成的文件是索引文件
哪种结构不具有直接读写文件任意一个记录的能力(串连文件)。
逻辑文件的组织结构是由(用户 )确定的。
逻辑文件存放到存储介质上时,采用的结构形式是与( 存储介质的性质)有关的。
实现按名存取后,允许用户对记录式文件进行存取的最小单位是记录
(索引 )结构的文件最适合于随机存取的应用场合。
物理文件的组织形式是与(文件长度 )无关的。
物理文件的组织形式是由文件系统按照对文件方便管理、快速检索和提高系统效率的原则并根据存储介质的性质、用户对文件的存取方法来决定的。它与逻辑文件的组织形式无关。
若把用户要求顺序存取的文件保存到磁盘上,则文件系统可把该文件组织成(顺序、链接、索引 )结构。
物理文件的组织形式是与(文件长度、记绿个数、文件目录结构 )无关的。
逻辑文件可以有两种形式,一种是结构文件; 另一种是无结构文件
源程序、目标代码等文件属于流式文件
由用户组织的文件称逻辑文件, 文件系统组织的文件称物理文件。
逻辑文件可以有流式和记录式两种形式。
在记录式文件中能把各个记录区别开来的项被称为记录的主键
存放在磁盘上的文件可以有多种组织形式,通常有顺序文件;链接文件;索引文件三种结构。
组织成链接结构;索引结构形式的物理文件,文件信息可以被存放在存储质上不相邻的块中。
每个索引文件都必须有一张索引表, 索引表的每一个表项至少应包含有记录的标识(或关键字,或记录号);和存放位置
每个索引文件都有一个索引表,索引表的条目包含文件的逻辑块号及 所对应的物理块号。
简述索引|结构的优点?
1)索引结构文件既适于顺序存取,也适用于随机存取。
2)索引文件可以满足文件动态增长的要求,也满足了文件插入、删除的要求;
3)索引文件还能充分利用外存空间。
文件目录
文件系统利用(目录 )来管理文件。
将文件目录分成基本文件目录和符号文件目录的作用是提高检索文件速度和便于共享
FAT文件系统的版本:FAT-12、FAT-32、FAT-16
如果文件系统中有两个文件重名,不应采用单级目录结构
文件系统采用二级文件目录可以解决不同用户间的文件命名冲突
目录文件所存放的信息是该目录中所有子文件和数据文件的目录
使用绝对路径名访问文件是从( 根目录)开始按目录结构访问某个文件。
采用多级目录结构的系统中,允许多个用户共享某些文件。因此,各用户(可以按自定义的)文件名访问共享文件。
从当前目录开始设置的路径是相对路径,相对路径不能以“\"开始。从根目录开始设置的路径才是绝对路径,绝对路径应该以“\"开始。
多级目录搜索速度快、同一子目录下文件名不能重复、有利于文件保护
采用目录项分解法来存储文件控制块,假设一个文件控制块有48字节 ,符号目录项占8字节基本目录项占40字节物理块大小为512字节。如果一个目录文件有512个目录,那么查找一个文件的平均访盘次数为5.5
采用树形目录结构可以提高搜索文件的速度、解决命令冲突、有利于文件的分类、可防止用户共享文件时造成的破坏
从用户的角度看,文件系统的功能是要实现按名存取;为了达到这一目的, 一般要建立文件目录
(文件控制块)是文件存在的标志,它记录了系统管理文件所需要的全部信息。
文件目录是文件控制块的有序集合。
单级文件目录结构不能解决文件重名的问题。 多户系统所用的文件目录结构至少应是二级文件目录结构
文件系统是指文件、管理文件的软件及数据结构的总体。 操作系统是通过按名存取来对文件进行编排、增删、维护和检索。文件控制块的有序集合称为文件目录。多级目录结构形式为树形结构
面向用户,文件系统主要是实现"按名存取”,请解释什么是“按名存取”?
按名存取是指用户使用文件时只要给出文件的名字和一些必要的说明, 文件系统就能按用户的要求把逻辑文件转换成物理文件存放到存储介质上,或把存储介质上的物理文件转换成逻辑文件供用户使用。
文件系统为什么要实现"按名存取”?
要把文件存放到存储介质上或要从存储介质上读出文件,都必须记住存储空间的使用情况、文件存放的物理位置,以及启动相应的存储设备来保存和读出文件。如果文件系统实现了按名存取功能,那么,这些工作都不需要用户自己去做,这不仅方便了用户,而且能保证文件的安全可靠。
文件系统为什么要求用户按规定的次序来调用文件操作?
文件系统实现按名存取为用户提供方便,因而,文件系统要把用户组织的逻辑文件按定的方式转换成物理文件存放到存储介质上,当用户需要使用时,文件系统又要从存储介质上读出文件并把它转换成逻辑结构。为了正确地实现文件的存取,文件系统设计了一组文件操作供用户调用。
某UNIX操作系统采用结点管理文件的存储空间,假设磁盘块大小为2048字节,每个地址占64位(8个字节),i结点包括13个地址项,其中10个地址用来存直接地址,一个地址项存一次间接地址, 一个地址项存二次间接地址, 一个地址项存3次间接地址。请问,系统能管理的单个文件最大长度是多少?
文件存储空间管理
·管理空闲磁盘空间可以用(位示图 ),它利用二进制的一位来表示个磁盘块的使用情况
为了进行存储空间的分配与回收,在外存储设备上设置有空闲空间登记表, 该表动态跟踪该外存储设备上所有还没有分配给任何文件的空闲块的数目和块号。
对于只读的存储设备(如CD-ROM光盘),无所谓回收,也无所谓动态分配,这种存储设备在物理上就是不可重用的。
文件存储空间管理的基本方法有空闲文件目录法;空闲块链接法;位示图法
文件的存储空间管理实质上对外存空白块的组织和管理的问题,主要由三种不同的管理方法。其中位示图法使用一个向量描述整个磁盘,向量的每一位表示一个物理块的状态,用0或1表示该块的使用与否。
UNIX系统中采用空闲块成组链接方法管理磁盘存储空间。
在管理磁盘空闲空间时,一般采用四种不同的数据结构,即位示图、空闲块表 、空闲块链接表和空闲块成组链接
实现文件系统的表目
当用户申请打开一个文件时,系统要在内存中为该用户保存一些必要的信息, 这些信息以表格栏目中内容的形式出现,被称为表目
系统打开文件表专门用于保存已打开文件的文件控制块,通常放在内存。该表格中还保存了共享计数、修改标志等信息。
每个进程都有一个“用户打开文件表”。 以UNIX 为例,该表的内容有文件描述符、打开方式、读写指针、系统打开文件表入口等。
文件及文件目录操作
打开文件操作是对(目录和文件) 的操作
典型的目录操作不包括open
用户要求访问一个存放在存储介质上的文件时,首先要调用操作系统提供的(打开) 文件操作。
用户可以调用(关闭) 文件操作来归还文件的使用权。
用户可以要求文件系统删除一个不再需要使用的文件, 但提出删除要求前应先调用(关闭 )文件操作。
打开文件,是使用文件的第一步。
使用文件的第一步,是把文件控制块FCB送到内存, 即打开文件
文件系统为用户提供“按名存取"功能后,用户应调用(打开、建立 )文件操作来申请对文件的使用权。
建立文件的系统调用的一般格式是create(文件名,访问权限)
用户要求使用一个存放在存储介质上的文件时,应顺序调用打开文件操作、读文件操作和关闭文件操作。
文件系统的性能
要实现记录的成组与分解操作必须设置主存缓冲区。
记录的组成与分解操作使得操作系统的开销增大、启动存储设备的次数减少、文件存储空间的利用率提高
系统在内存中保存一些磁盘块,这些磁盘块在逻辑上属于磁盘,内存的这一区域被称为高速缓存
当用户文件的逻辑记录的大小比存储介质上的块长小得多时,可采用记录的成组来提高存储空间的利用率。
为实现记录的成组与分解操作,必须设立主存缓冲区,缓冲区的大小应与存储介质上分块的大小相一致。
解决磁盘速度慢以及磁盘故障的技术是RAID
记录的成组和分解技术是磁盘高速缓存的一种应用,虽然需要代价,但是具有提高存储空间的利用率和减少启动设备次数的优点。
假定一个名为ABC的文件由长度为250个字符的4个逻辑记录组成,磁盘存储空间被划分成长度为512个字符的块,为了有效地利用磁盘空间,可采用记录成组的方式把文件存放到磁盘上,问:
(1)应开辟一个多大的主存缓冲区?
(2)该文件至少占用多少块磁盘空间?
(3)若把该文件以索引结构形式组织,请设计一张便于检索文件信息的索引表。
只要根据记录号查索引表,从存放地址和块内相对位置便可计算出记录的实际位置。
索引表的形式不是惟一的, 读者可以设计其它形式的便于检索的索引表。
假定某系统中,磁带的记录密度为每英寸1200个字符,每个逻辑记录长为200个字符,块与块之间的间隙为0.5英寸。请问,为了使磁带空间利用率达到70%,采用记录成组操作时的块因子应为多少?
文件共享、保护和保密
文件共享的好处:节省文件所占用的存储空间、免除系统复制文件的工作、利文件共享可以实现进程间相互通信
文件的保密措施包括设置口令、使用密码、病毒防范
为防止系统故障造成文件被破坏,通常可采用(定时转储文件 )方法来保护。
为防止用户使用共享文件时可能造成文件被破坏,通常可采用(规定使用权限 )方法来保护文件。
为文件设置口令是实现文件保密的一种可行方法。
在Linux系统中,对文件的访问权限有3种:可读、可写、可执行,分别用字母r、w、x表示;若该文件为目录则用d标志,否则用-标志。
为了保护文件,可以对用户的存取权限实施控制。当用户数目和文件数目不多时,可以用存取控制矩阵方式,但是当文件和用户较多时,为了减少空间和时间开销,则采用二级存取控制方式。
文件系统经常采用以下两种方法来保护文件即:建立副本和定时转储
区分文件的保护和保密。
文件的保护是指防止文件被破坏:文件的保密是指防止他人窃取文件。
怎样防止系统故障造成的文件被破坏?
(1)建立副本,把同一文件存储到多个存储介质上,当某个存储介质上的文件被破坏时,可用其它存储介质上的备用副本来替换; (2)定时转储,在文件执行过程中定时地把文件转储到其它存储介质上,一旦文件发生故障时就可用转储的文件来复原,把有故障的文件恢复到某一时刻的状态,仅丢失了自上次转储以来新修改或增加的信息。
防止用户使用共享文件时可能造成文件被破坏
(1)根据文件性质规定使用权限,例如:只可读、可读可写、只许执行、不能删除等,仅当用户对文件的使用要求符合文件规定的使用权限时才允许对文件进行存取
(2)采用树形目录结构限制共享范围,能得到某级目录权限的用户才可使用该级目录所属的各级子目录和文件,使用时必须按规定的权限进行存取;
(3)对用户进行分类,例如,UNIX把用户分成类:文件主、同组用户、其它用户,规定不同类的用户对文件有不同的使用权限。
评论: