连续组织方式又称为连续分配方式
要求为每一个文件分配一组相邻接的盘块
例如,第一个盘块的地址为b,第二个则为b+1。
通常,它们位于一条磁道上,在进行读/写时,不必移动磁头。
在采用连续组织方式时,可把逻辑文件中的记录顺序地存储到邻接的各物理盘块中。
连续组织方式保证了逻辑文件中的记录顺序与存储器中文件占用盘块的顺序的一致性
为使系统能找到文件存放的地址,应在目录项的“文件物理地址”字段中记录该文件的第一个记录所在的盘块号和文件长度(以盘块为单位)
外存空闲空间进行一次紧凑,所花费的时间远比将内存紧凑一次所花费的时间多。
优点:
(1)顺序访问容易,支持对定长文件的随机访问。
(2)顺序访问速度快,由连续分配所装入的文件,占用的盘块可能是位于一条或几条相邻的磁道上,磁头的移动距离最少——因此,这种文件的访问速度是最高的一种。
缺点:
(1)要求为每一个文件分配连续的存储空间。会产生许多外部碎片,严重地降低了外存空间的利用率。如果定期利用紧凑的方法消除碎片,又会花费大量机器时间。
(2)必须事先知道文件的长度。
(3)不能灵活地插入和删除记录。
(4)对于动态增长的文件,采用预分配存储空间的方法,会使大量的存储空间长期空闲。
为文件分配多个不连续的盘块,再通过每个盘块上的连接指针,将属于同一个文件的多个离散的盘块链接成一个链表。
优点:
(1)消除了磁盘的外碎片,提高了外存的利用率。
(2)对插入、删除和修改记录都非常容易。
(3)能适应文件的动态增长,无需事先知道文件的大小。
在采用隐式链接组织方式时,文件目录中的每个目录项,都必须含有指向链接文件第一个盘块和最后一个盘块的指针。而在每个盘块中都含有下一个指向下一个盘块的指针。
隐式链接组织方式的缺点:
(1)只适合顺序访问,如果要访问地i个盘块,则需要独处文件的第一个盘块,依次读到第i个盘块。
(2)只通过链接指针将一大批离散的盘块链接起来,可靠性较差,只要任何一个指针出问题,都会导致整个链断开。
为了提高检索速度和减小指针所占用的存储空间,可以将几个盘块组成一个簇。比如一个簇可以包含四个盘块,在进行盘块分配时,是以簇为单位进行的。在链接文件中的每个元素也是以簇为单位。但是会增大内部碎片。
簇是一组相邻的扇区,在FAT中它是一个虚拟扇区。在进行盘块分配时,是以簇为单位,簇的大小是2n个盘块
多级索引的优点:加快了对大型文件的查找速度
缺点:在访问一个盘块时,其所需启动磁盘的块数随着索引级数的增加而增加,即使小文件也是如此。而且实际情况中,大文件较少。
为了全面照顾小、中、大型作业,采用多种组织方式来构成文件的物理结构。
小型文件:每一个盘块地址直接放入文件控制块FCB中——直接寻址
中等文件:采用单级索引组织方式。为获得该文件的盘块地址,只需从FCB中找到该文件的索引表——一次间址
大型和特大型文件:两级索引和三级索引组织方式——两次间址,三次间址
UNIX系统中的索引结点有13个地址项
(1)直接地址:0~9存放直接地址
(2)一次间接地址:10
(2)多次间接地址:二级间接地址、三级间接地址:11,12