购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.5.1 考点精讲

1.树形目录结构

在计算机的文件系统中,一般采用树形目录结构。在树形目录结构中,树的根节点为根目录,数据文件作为树叶,其他所有目录均作为树的节点。

根目录隐含于一个硬盘的一个分区中,根目录在顶层。它包含的子目录是一级子目录。每一个一级子目录又可以包含若干二级子目录……这样的组织结构就叫作目录树。

当前盘和当前目录是系统默认的操作对象。如果用户没有指明操作对象,系统就将用户命令指向当前盘和当前目录。

路径是指从根目录或者当前目录开始到访问对象(目录或者文件),在目录树中经过的所有目录的序列。例如“c:\dos\lmouse\mouse”就是Windows系统中的一条路径。在树形目录结构中,从根目录到任何数据文件之间,只有一条唯一的通路,从树根开始,把全部目录文件名与数据文件名,依次用“/”(UNIX/Linux系统)或“\”(Windows系统)连接起来,构成该数据文件的路径名,且每个数据文件的路径名是唯一的。这样,可以解决文件重名问题。

从树根开始的路径为绝对路径,如果文件系统有很多级,使用不是很方便,所以引入相对路径,即是从当前目录开始,再逐级通过中间的目录文件,最后到达所要访问的数据文件。

绝对路径给出文件或目录位置的完全的描述,通常由层次结构的顶端开始(根目录),通常第一个字符是“/”(UNIX/Linux系统)或者是盘符(Windows系统)。相对路径通常由目录结构中的当前的位置开始,一般都比绝对路径要短。

父目录是指当前路径的上一层目录。每个目录下都有代表当前目录的“。”文件和代表当前目录父目录的“..”文件,相对路径名一般就是从“..”开始的。

2.位示图

位示图法是为管理磁盘空闲存储空间而提出的一种方法。该方法是在外存上建立一张位示图(Bitmap),记录文件存储器的使用情况。每一位仅对应文件存储器上的一个物理块,取值 0 和 1 分别表示空闲和占用。文件存储器上的物理块依次编号为:0、1、2……假如系统中字长为 32 位,有 4096 个物理块,那么在位示图中的第 1 个字对应文件存储器上的0、1、2、…、31 号物理块;第 2 个字对应文件存储器上的 32、33、34、…、63 号物理块;第 32 字对应文件存储器上的 4064、4065、…、4095 号物理块。这样位示图的大小为32 字。

位示图是利用二进制的一位来表示磁盘中一个盘块的使用情况,如图 2-12 所示。当其值为“0”时,表示对应的盘块空闲;为“1”时表示已分配。由所有盘块对应的位构成一个集合,称为位示图。位示图也可描述为一个二维数组map:Var map:array[1...m,1...n]of bit;。

图2-12 位示图

3.索引文件

索引文件是一种对文件存储不连续分配的方法。为每个文件建立一张索引表,索引表中的每一表项指出文件信息所在的逻辑块号和与之对应的物理块号。

索引文件既可以满足文件动态增长的要求,又可以方便而迅速地实现随机存取。对一些大的文件,当索引表的大小超过一个物理块时,会发生索引表的分配问题。一般采用多级(间接索引)技术,这时在由索引表指出的物理块中存放的不是文件而是存放文件信息的物理块地址。这样,如果一个物理块能存储 n 个地址,则一级间接索引将使可寻址的文件长度变成 n 2 块,对于更大的文件可以采用二级甚至三级间接索引(例如,UNIX操作系统采用三级索引结构,如图 2-13 所示)。

索引文件的优点是既适用于顺序存取,又适用于随机存取;缺点是索引表增加了存储空间的开销。另外,在存取文件时需要访问两次磁盘,一次是访问索引表,另一次是根据索引表提供的物理块号访问文件信息。为了提高效率,一种改进方法是,在对某个文件进行操作之前,预先把索引表调入内存。这样,文件的存取就能直接从在内存的索引表中确定相应的物理块号,从而只需要访问一次磁盘。

图 2-13 索引结构图 J1742Yyo/wTU6OkHsKsdjnoRsBruafeYwETHJ1fRIR0Aoy7MB+fnjEsFxvtrOaYI

点击中间区域
呼出菜单
上一章
目录
下一章
×