一、文件
文件系统出现是为了解决多用户存储、管理信息时出现的问题。用户所有的操作都是基于逻辑文件的,文件系统最终需要将用户对逻辑文件的操作转换成对物理文件的操作。物理文件可以是在存储设备上的存储区域,也可以使一个设备、管道、套接字,文件系统将用户对文件的操作转换成用户对设备的操作、用户间的通信操作和网络操作。
1逻辑文件
在文件系统中,用户所面对的文件是逻辑文件,逻辑文件是由文件名标识的一组信息的集合。文件名是一个字符串。用户在逻辑文件上对信息进行存储、操作。
逻辑文件与物理文件的分层结构增加了文件系统的灵活性。完全隔离,不影响。
2逻辑文件组织
最简单的组织形式是一级目录结构。
树型多级目录结构。不同逻辑文件可以重名,只要它们位于不同目录中。
3逻辑文件结构
两种形式:记录式文件和流式文件。
记录式文件:有结构的文件,包含若干逻辑记录;
流式文件:文件内容只是一串信息集合,又称字节流文件。每个字节都有一个索引。打开文件的进程使用文件读写位置来访问文件中特定字节。当文件打开时,文件读写位置均指向首字节,每k个字节读或写操作完成则将文件读写位置增加k。大多数现代操作系统系统如Linux 对用户只提供流式文件。
4逻辑文件的存取
存取方法是文件系统为应用程序提供的访问文件的方法和手段。
1)顺序存取
主要用于磁带文件,但也适用于磁盘上的顺序文件;
2)直接存取
用户提供给操作系统的是相对块号,它是相对于文件开始位置的一个位移量,而绝对块号则有系统换算得到。对于记录式文件,要为每个文件记录指定关键字,可通过关键字映射直接检索和存取文件信息。
3)索引存取
用户提供给操作系统记录名或记录键后,先搜索记录名或记录键,再查找到所需记录。实际系统中,大多采用多级索引,以加速记录查找的过程。
5物理文件的结构
计算法:实现原理是设计一个映射算法,通常用到线性计算法、杂凑法等,通过对记录键的计算转换成对应的物理地址,从而找到所需记录。直接寻址文件、计算寻址文件和顺序文件均属此类。
指针法:设置专门指针,指明相应记录的物理地址或表达各记录之间的关联。索引文件、索引顺序文件、连接文件和倒排文件等均属此类。
1)顺序文件:将一个文件中逻辑上连续的信息存放到存储介质的依次相邻的物理块上形成顺序结构,又称连续文件。优点:顺序存取时速度较快。所以批处理文件,系统文件用得很多。主要缺点是:建立文件前不能预先确定文件长度,以便分配存储空间;修改、插入和增加文件的记录有困难;对可变长记录的处理困难;磁盘作连续分配,会造成空闲块的浪费。
2)连接文件:使用连接字(又称指针)来表示文件中各个记录之间的关系。使用指针可以将文件的逻辑记录顺序与它所在的存储空间的物理块顺序完全独立,即存放信息的物理块不必连续,而借助于指针表达记录之间的逻辑关系;连接结构必须将连接字与数据信息混合存放,破坏了物理块的完整性;存取信息须通过缓冲区,待获得连接字后,才能找到下一物理块的地址。因而,仅适宜于顺序存取。连接结构恰好克服了顺序结构不适宜于增、删、改的缺点。
<