_第2章 FAT文件系统
- 格式:ppt
- 大小:5.52 MB
- 文档页数:137


FAT文件系统分析FAT文件系统的数据结构中有两个重要的结构:文件分配表和目录项:文件和文件夹内容储存在簇中,如果一个文件或文件夹需要多余1个簇的空间,则用FAT表来秒速如何找到另外的簇。
FAT结构用于指出文件的下一个簇,同时也说明了簇的分配状态。
FAT12、FAT16、FAT32这三种文件系统的主要区别在于FAT项的大小不同。
FAT文件系统的每一个文件和文件夹都被分配到一个目录项,目录项中记录着文件名、大小、文件内容起始地址以及其他一些元数据。
在FAT文件系统中,文件系统的数据记录在“引导扇区DBR”中。
引导扇区位于整个文件系统的0扇区,是文件系统隐藏区域的一部分,我们称其为DBR(DOS Boot Recorder ——DOS引导记录)扇区,DBR中记录着文件系统的起始位置、大小、FAT表个数及大小等相关信息。
在FAT文件系统中,同时使用“扇区地址”和“簇地址”两种地址管理方式。
这是因为只有存储用户数据的数据区使用簇进行管理(FAT12和FAT16的根目录除外),所有簇都位于数据区。
其他文件系统管理数据区域是不以簇进行管理的,这部分区域使用扇区地址进行管理。
文件系统的起始扇区为0号扇区。
FAT32的保留区FAT32文件系统的开始部分有一个由若干扇区组成的保留区,保留区的信息会记录在DBR扇区中,比较常见的为32、34或38个扇区。
引导扇区:引导扇区是FAT32文件系统的第一个扇区,也称DBR扇区。
包含以下基本信息:·每扇区字节数·每簇扇区数·保留扇区数·FAT表个数·文件系统大小(扇区数)·每个FAT表大小(扇区数)·根目录起始簇号·其他附加信息说明:我们可以通过每个FAT表的大小扇区数乘以FAT的个数得到FAT区域的大小;通过保留扇区数和FAT区域的大小就可以得知数据区的起始位置,也即文件系统第一簇的位置。
由根目录的簇号和第一簇的位置就可以得到根目录的位置。
FAT文件系统原理FAT(File Allocation Table)是一种文件系统,最早由微软公司开发,用于磁盘驱动器的存储和管理。
FAT文件系统的设计目标是简单、高效和可移植,因此得到了广泛应用,尤其是在早期的计算机系统中。
下面是FAT文件系统的原理的详细解释。
FAT文件系统使用文件分配表来跟踪文件在磁盘上的存储位置。
文件分配表是一个记录了文件分配信息的表格,它包含了每个存储块的状态(已分配或未分配),以及下一个块的指针。
文件分配表把磁盘划分为多个存储簇(通常是一个或多个扇区的集合),文件存储在这些存储簇中。
FAT文件系统的核心数据结构是文件分配表。
文件分配表包含两个关键信息:文件分配表项和簇号。
文件分配表项记录了每个存储簇的状态。
常见的状态有:未分配、已分配但没有数据和已分配且有数据。
簇号用来标识文件磁盘上的存储位置,每个文件可以由一个或多个存储簇组成。
文件分配表项中的指针指向下一个簇号,在文件存储过程中,文件系统就是按照这个指针链条来定位文件数据的。
在FAT文件系统中,文件的起始簇号存储在目录项中。
目录项是一个结构,记录了文件的属性、文件名和文件的起始簇号等信息。
簇号指向文件分配表中的对应项,然后根据指针链条逐个访问每个存储簇,直到全部访问完毕,就可以读取或写入整个文件了。
由于每个存储簇的大小是固定的,在读取文件时,可能会出现一些碎片。
碎片是指数据文件被分散地存储在多个存储簇中,而不是连续存储在相邻簇中。
为了避免碎片化,FAT文件系统有一些处理碎片问题的策略。
例如,文件系统会优先将新文件存储在已删除文件的存储簇上,这样可以最大程度地保持簇的连续性,减少碎片。
此外,FAT文件系统也支持磁盘碎片整理工具,用于优化磁盘空间的利用率。
FAT文件系统的一个优势是可移植性。
由于FAT文件系统是一种简单和通用的文件系统,因此可以在不同的操作系统和平台上使用。
它的文件系统结构相对简单,易于实现和理解。
因此,FAT文件系统广泛用于嵌入式设备、移动存储介质和U盘等。