操作系统 文件管理 文件的结构
文件的逻辑结构 设计文件逻辑结构的原则 易于操作 查找快捷 修改方便 空间紧凑 文件的逻辑结构 文件的逻辑结构就是用户所看到的文件的组织形式。 文件划分为三类逻辑结构:无结构的字符流式文件、定长记录文件和不定长记录文件构成的记录树。 定长记录文件和不定长文件可以统称为记录式文件。 流式文件 流式文件是有序字符的集合,其长度为该文件所包含的字符个数,所以又称为字符流文件。 源程序、目标代码等文件属于流式文件。UNIX内系统采用流式文件结构。 记录式文件 定长记录文件:各个记录长度相等。在检索时,可以根据记录号i及记录长度L就可以确定该记录的逻辑地址。 不定长记录文件:各个记录的长度不等,在查找时,逐条查找,直到找到所需要的记录。 文件的物理结构 顺序结构 顺序结构原理 顺序结构又称为连续结构,这是一种最简单的文件物理结构,他把逻辑上连续的文件信息依次存放在连续编号的物理快中。 在顺序结构中,一个文件的目录项中只要指出该文件占据的总块数和起始块号即可。 顺序结构的优缺点 优点:只要是知道了文件在文件存储设备上的起始块号和文件长度,就能很快地进行存取。 缺点:文件不能动态增长。 链接结构 链接结构原理 为每个文件构造所使用的磁盘块的链表。使用这种链接结构的文件,将逻辑上连续的文件分散存放在若干个不连续的物理块中。 间接索引是在索引表所指的物理快中不存放在文件信息,而是装有存在这些信息的物理快地址。 在索引结构文件中要存取文件时,需要至少访问存储设备两次以上,其中,一次是访问索引表,另一次是根据索引表访问在存储设备上的文件信息。 索引表的链接模式:一个索引表通常就是一个物理盘快。对大文件就用多个索引连接在一起。 多级索引:将一个大文件的所有索引表(二级索引)的地址存放在另一个索引表(一级索引)中。 索引结构的示例–I节点 基本思想:给每个文件赋予一张称为I节点的小表,在这张小表中列出了文件属性及文件中个块在磁盘上的地址。 文件数据盘快,称为直接盘快。 该索引指向文件数据盘快,称为一重间接盘快。 二级索引表,称为二重间接盘快。 三级索引表,称为三重间接盘快。 文件的存储介质 存储介质的特点 外存储设备同内存相比较,一般有容量大、断电后仍可保存信息、速度快慢、成本较低等特点。 外存储设备通常由驱动部分和存储介质两部分组成。存储介质又常称为卷。 驱动器的作用是是计算机能够实现读写(及保存、控制、测试)存储介质上的内容。 存储设备有很多种类。如磁盘、磁带、磁鼓、纸带、光盘和内存等。一个计算机系统中可同时连接说中存储设备。 磁盘空间由盘面、柱面、磁道和扇区组成。 外存设备存取的过程大致由:读状态-》置数据-》置地址-》置控制-》读状态。 用户对外存储设备的要求 用户对外存设备的要求是:方便、效率、安全。 在读写外存储设备时不涉及硬件细节,用户直接使用逻辑地址和逻辑操作。 外存储设备存取速度尽可能快,容量大切空间利用率高。 外存储设备上存放的信息安全可靠,防止来自硬件的故障和他人的侵权。 可以方便的共享,存储空间可以动态扩大、缩小,携带,拆卸便捷,可随时了解存储设备及使用情况。 以尽可能小的代价完成上述要求。 文件在存储设备中的存取 顺序存储设备 磁带就是典型的顺序存储介质。 优点:存储容量大; 缺点:存取速度比较慢。 随机存取设备 磁盘是典型的随机存储设备。 磁盘一般由若干个磁盘片组成,每个磁盘片对应两个读写磁头,分别对磁盘片的上下两面进行读写。各个磁头与磁头臂之间相连。系统在对磁盘初始化时,将盘片上划分出一些同心圆,作为存储信息的介质,称为磁道。对每个磁道又分为若干段,称为扇区。每个扇区就构成了一个物理快,整个磁盘上所有扇区(物理块)统一编号,从零开始,所有磁盘片的相同磁道称为柱面。 磁盘上每个物理快的位置可用柱面号、磁头号、扇区号。 已知物理号,则磁盘地址: 柱面号 = [ 物理块号/(磁头数 X 扇区数) ] 磁头号 = [(物理块号 mod (磁头数 X 扇区数)) / 扇区数] 扇区号 = (物理块号 mod (磁头数 X 扇区数)) mod 扇区数 已知磁盘地址: 物理块号 = 柱面号 X(磁头数 X 扇区数)+ 磁头号 X 扇区数 + 扇区号。 磁头臂只能沿半径方向移动。在访问磁盘时,首先要把磁头臂移动到相应柱面的磁道上,称为寻道。然后等待盘片旋转,使指定的扇区转到磁头之下,实现了对磁道和扇区的定位。最后控制磁头对扇区中的数据进行读写。 一次访问磁盘的时间由寻道时间、旋转定位时间和数据传输时间所组成,寻道时间是机械动作的时间,因而需要花费的时间最长。 文件的存储方式 在用户面前,文件的呈现方式是文件的物理结构,在存储介质面前,文件呈现的是文件的物理结构,这与文件所使用的存储介质的特性有关。 哪一种文件的存取方式,取决于用户使用文件的方式,也与文件所使用的存储介质有关。数据库文件,就适合采用随机存储的方法。而如果存储介质采用的是磁带,就只能采用顺序存储。 顺序存储 顺序存储就是从前往后的依次访问文件的各个信息项。 若当前读取的记录为R,则下一次读取的记录被自动的确定为Ri+1. 随机存储 随机存取又称为直接存取,即允许用户按任意的次序直接存取文件中的任意一个记录,或者根据存储命令把读写指针移到文件的指定记录处读写。 关注微信公众号,第一时间获取最新内容,让我们一起变得更强!Debug客栈:订阅本站· 文章归档· 我的项目· 友情链接· 我的使用· 飞湾计划· 摄影展集· 我的主页· 知盈官网
以上内容来自博客订阅源,版权归原作者。关注作者后可以在 关注列表 第一时间查看作者文章。
登录后,加入这场讨论。
登录参与