1、外存的组织方式
(1)连续组织
磁盘在逻辑上由许多盘快构成。顾名思义,连续组织就是把数据分割成多块,放在连续的盘快内。当然,这种方式会产生很多碎片空间,当文件大小超过空闲的空间时,这时,磁盘就需要整理空间,耗费大量机器时间。还会降低外寸空间的利用率。
(2)链接组织
①隐式链接。
隐式链接有点类似于链表的方式,将文件放在不连续的盘块中,在盘快中含有指向下一个盘块的指针。这种方式解决了磁盘空间碎片问题,但是计算机需读出盘块中的指针,去读下一个盘块,这样会不停启动磁盘,降低检索速度。当然可以采用一种优化方案:将几个盘块形成簇,将这些簇用指针连起来。
②显示链接。
将链接文件各物理块的指针显式地存放在一张链接表中,链接表的首地址作为物理地址填入文件FCB(文件控制块)中,这种表叫FAT(File Allocation Table);
2、FAT
最早的FAT文件系统是FAT12,以盘块为基本分配单位,FAT的每个表项中存放下一个盘块号,将盘块链接起来。每个表项占12位,所以FAT最多循序4096个表项,一般每个盘块为512个字节,那么每个磁盘分区荣阳为4096*512B=2M。一个磁盘支持4个逻辑磁盘分区,所以磁盘容量最大为8M。
可见这样的方式使磁盘容量上限很小。此时引出了一个概念——簇,将几2N个盘块作为一个簇,将簇作为分配的基本单位。这样磁盘容量能扩大N倍。但是这样会引起一个问题,当簇的容量太大时,将会产生簇内零头,造成磁盘容量浪费。
之后又引出了FAT16,FAT32.FAT32是FAT表的最后一个产物,FAT32能支持更小的簇,将磁盘容量的大小跟磁盘空间的浪费达到一个平衡。
3、NTFS
(1)NTFS新特征
NTFS使用于windows2000/XP及后续的系统。
NTFS使用了64位磁盘地址;支持更长文件名,单个文件名限制在255个字符内,全路径名为32767个字符;具有系统容错功能;能保证系统的数据一致性。
NTFS还提供文件加密,文件压缩等功能。
(2)磁盘组织
NTFS以簇作为磁盘空间分配和回收的基本对象。一个文件占用若干个簇,一个簇属于一个文件。在NTFS文件系统中,把卷上簇的大小称为“卷因子”,其大小是扇区的整数倍。
(3)文件的组织
在NTFS中,将文件信息、目录信息保存在一张主控文件表MFT中。卷中的每个文件作为一条记录,在MFT表中占有一行,每行称为该行的元数据。当文件较小时,可以直接将文件的所有属性保存在元数据中。如果数据过大,则将数据存在其他簇中,此时元数据指向指向文件数据的队列指针。