1,文件的逻辑结构file logical structure:按用户观点如何组织数据;又称文件组织file organization
①定长记录(例顺序文件)
②变长记录(例索引文件)
1)顺序文件。系统需按该类型记录“长度”,通常定长。
2)索引文件。系统需为文件建立索引表。
3)索引顺序文件。建索引表,记录每组记录的第一个记录位置。
4)无结构文件(字符流式)。字节为单位,利用读写指针依次访问。系统对该类文件不需格式处理。
2,文件的物理结构:根据外存上的物理块的分配机制,记录文件外存的存储结构。用户感知不到的。
目标:有效利用外存空间,提高文件访问速度
常用三种方式:
连续分配
链接分配(不连续)
索引分配
通常一个系统中仅采用一种方式
采用的磁盘分配方式决定了文件的“物理结构”
顺序结构;链接式结构;索引式结构。
注意与逻辑结构名类似但不是一回事。
3,连续存储:
为每一个文件分配一组相邻的盘块。
逻辑文件中的记录顺序与存储器中文件占用盘块的顺序一致。
优点:顺序访问容易,读写速度快
缺点:会产生外存碎片。可紧凑法弥补,但需要额外的空间,和内存紧凑相比更花时间。
创建文件时要给出文件大小;存储空间利用率不高,不利于文件的动态增加和修改。
4,链接分配
设置链接指针,将同属于一个文件的多个离散盘块链接成一个链表,这样形成的文件称为链接文件。会有链接成本。
优点:
离散分配,消除外部碎片,提高利用率
同时适用于文件的动态增长;修改容易
1)隐式链接
链接信息隐含记录在盘块数据中;
每个盘块拿出若干字节,记录指向下一盘块号的指针。
问题:只能顺着盘块读取,可靠性低,可靠性低。
2)显式链接
录盘块链接的指针显示地记录为一张链接表;
所有已分配的盘块号记录在其中,称文件都分配表;
为了提高文件系统访问速度,FAT一般常驻内存。
5,
表项大小取决于盘快数量编码所需的位数。
表项个数=盘块个数。
6,索引分配
系统运行时只涉及部分文件,FAT表无需全部调入内存
每个文件单独建索引表(物理盘块索引),记录所有分配给它的盘块号;
建立文件时,便分配一定的外存空间用于存放文件盘块索引表信息;
③混合组织索引(增量式索引组织方式)
iaddr(0)~iaddr(9)存放直接地址,即存文件数据的盘块号;
iaddr(10)存放单级索引的索引盘块号;
剩余的用于文件较大时存放多级索引数据。
iaddr(11)存放二级索引的主索引盘块号
iaddr(12)存放三级索引的主索引盘块号