文件系统
FAT
FAT全称File Allocation Table,也就是文件分配表。这源于采用了一种叫做文件分配表(File Allocation Table)的结构来管理磁盘中的扇区。
在FAT文件系统中主引导记录结构的描述中,有个很重要的结构:BPB (BIOS Parameter Block),也就是BIOS参数块。BPB存在于MBR扇区(或主/引导扇区)中。
FAT卷(分区)大小
BPB中有个BPB_TotSec16字段,如果是FAT32,则是BPB_TotSec32字段,分别占用2和4个字节,表示FAT卷(分区)的大小,也就是FAT卷(分区)的扇区数。所以FAT卷(分区)最大能表示2的16次方和2的32次方个扇区,也就是单个FAT卷(分区)最大能表示32M和2T。
FAT(File Allocation Table,文件分配表)
BPB中有个BPB_FATSz16字段,如果是FAT32,则是BPB_FATSz32字段,分别占用2和4个字节,表示FAT(File Allocation Table,文件分配表)的大小,也就是FAT(File Allocation Table,文件分配表)使用的扇区数。所以FAT(File Allocation Table,文件分配表)最大能表示2的16次方和2的32次方个扇区,也就是单个FAT(File Allocation Table,文件分配表)最大能表示32M和2T。
FAT包括3中格式:FAT12, FAT16和FAT32
FAT12, FAT16由以下4个区域组成:
1、Reserved area (volume configuration data)
2、FAT area (allocation table for data area)
3、Root directory area
4、Data area (contents of file and directory)
也就是:
1、保留区域
2、FAT区域
3、根目录区域
4、数据区域
FAT32由以下3个区域组成,它没有根目录区域:
1、Reserved area (volume configuration data)
2、FAT area (allocation table for data area)
3、Data area (contents of file and directory)
也就是:
1、保留区域
2、FAT区域
3、数据区域
这些区域的大小以及在磁盘中的位置并不固定。
BPB中有个BPB_RsvdSecCnt字段,表示保留区域(Reserved area)所使用的扇区数,该字段不可以为0,通常为1,1个扇区正好是MBR的大小,也就是MBR扇区或主/引导扇区,当然也可以是大于1的值,如对于FAT32文件系统,通常为32。
FAT区域在保留区域的后面,FAT区域中主要存放FAT(File Allocation Table,文件分配表),出于容错的考虑,会冗余存放多份FAT(File Allocation Table,文件分配表),正常情况下只会使用到其中的一份FAT(File Allocation Table,文件分配表),通常会存放2份,以保证如果其中的一份遭到损坏的话,可以使用另一份进行恢复。
BPB中有个BPB_NumFATs字段,表示FAT区域中FAT(File Allocation Table,文件分配表)的个数。通常为2。大于等于1的值都是有效的。
BPB中有个BPB_FATSz16字段,如果是FAT32,则是BPB_FATSz32字段,表示FAT(File Allocation Table,文件分配表)的大小,也就是FAT(File Allocation Table,文件分配表)使用的扇区数。
随后就是数据区域
从这里我们知道,保留区域是在磁盘中从主/引导扇区开始的至少1个扇区的区域。FAT区域是在保留区域之后的BPB_FATSz16 * BPB_NumFATs个扇区。如果是FAT32,就是BPB_FATSz32 * BPB_NumFATs。数据区域是在保留区域之后的扇区。
保留区域
保留区域中主要就是一个DBR区,如果保留区域超过1个扇区的话,那么除了DBR区,还会有部分剩余保留区域。
DBR区
DBR区就是DBR扇区,占512字节。
DBR扇区
也就是Boot Sector,DBR扇区中主要包括引导(Bootstrap)程序和BPB (BIOS Parameter Block),也就是BIOS参数块。
这里的Boot Sector,也就是引导扇区通常被称为VBR(卷引导记录)或PBR(私有引导记录),但它只是保留区域的第一个扇区,卷(分区)的第一个扇区。
DBR(Dos Boot Record, DOS引导记录)
DBR DOS引导记录存放于DBR扇区中。DBR在有些地方也称为VBR(卷引导记录)或PBR(私有引导记录)
DBR和MBR的区别
MBR用于引导操作系统的,系统祝引导程序bootloader存放在MBR中。
DBR是FAT卷(分区)的引导扇区,它的引导程序存放在DBR中。
FAT文件系统
FAT文件系统本身也称为逻辑卷或者逻辑驱动器。FAT12, FAT16和FAT32分别称为FAT12, FAT16和FAT32文件系统。
什么是逻辑卷和逻辑驱动器
以Windows磁盘管理为例,如下图,Windows中的C、D、E、F盘。。。都是一个个卷,也就是逻辑卷。其中每个盘都是一个分区,其中C、F盘为主要分区,也就是基本分区。D、F盘为一个扩展分区,D、F盘为扩展分区下面的两个逻辑驱动器,逻辑驱动器也是一种特殊的分区。
可以看出每个盘(每个分区)都对应一个文件系统,也就是一个文件系统。
相关推荐
**FAT文件系统原理详解** FAT(File Allocation Table,文件分配表)文件系统是一种古老但仍然广泛使用的文件系统,尤其在嵌入式设备、闪存驱动器和一些老式的计算机系统中。它通过维护一个表格来跟踪磁盘上文件的...
FAT文件系统以其简单、可靠和兼容性好而著称,但随着技术的发展,它逐渐被更高级的NTFS和exFAT所取代。 FAT文件系统的核心是文件分配表,这是一个记录磁盘上所有簇(簇是磁盘上最小的可分配单元)状态的表格。每个...
"FAT协议.doc"可能是微软关于FAT文件系统的官方协议文档,详细阐述了FAT文件系统的标准规格、兼容性要求以及授权使用条款。了解这份文档对于开发者来说是至关重要的,它能确保软件与各种使用FAT文件系统的设备兼容。...
FAT文件系统包括多种版本,如FAT12、FAT16和FAT32,其中FAT32是最为普遍的。下面将详细阐述这些知识点。 首先,我们来理解FAT32文件系统的基本结构和工作原理。FAT32是一种优化的FAT16格式,它允许更大的磁盘分区和...
**硬盘FAT文件系统原理** 文件系统是操作系统用于组织、管理和存储数据的一种机制,它使得用户可以方便地访问和管理硬盘上的文件。FAT(File Allocation Table)文件系统是最早和最广泛使用的文件系统之一,尤其在...
FAT文件系统是计算机科学历史上的重要里程碑,虽然随着技术的发展,更先进的文件系统如NTFS、EXT等已逐步取代FAT,但了解FAT的工作原理对于理解文件系统的基本概念仍然具有重要意义。在日常使用中,我们可以通过合理...
标题中的“Mini-Fat.rar”很可能是一个包含了关于FAT文件系统小型实现的压缩包,而“fat_fat 文件_fat16_fatfs sst39vf1601_fat文件系统”这部分描述了该压缩包涉及的核心知识点。描述中提到这个程序设计得简洁高效...
FAT文件系统采用了一种多级目录管理方式,包括一级二级文件目录UFD(User File Directory)和根目录目录MFD(Master File Directory)。UFD由用户的所有文件块组成,每个用户在MFD中有一个对应的目录项,包含用户名...
FAT文件系统,全称File Allocation Table,即文件分配表,是一种早期的文件系统格式,广泛应用于Windows操作系统中,包括FAT16、FAT32等版本。FAT文件系统的结构设计简洁明了,对于理解文件系统的工作原理具有重要...
嵌入式FAT文件系统是计算机存储领域中的一个重要概念,特别是在嵌入式设备和微控制器应用中。FAT,全称File Allocation Table(文件分配表),是一种广泛使用的文件管理系统,它允许设备组织和管理存储在磁盘上的...
Fat文件系统,全称为FAT(File Allocation Table),是一种广泛使用的磁盘分区格式,尤其在嵌入式系统和早期的个人计算机中非常常见。本文将深入探讨可移植C语言实现的Fat文件系统,并与周立功的Fat文件系统设计进行...
FAT文件系统,全称为File Allocation Table(文件分配表),是个人计算机中广泛使用的文件系统之一,尤其在早期的Windows操作系统中占据主导地位。本文将深入解析FAT文件系统的原理、结构及其应用。 FAT文件系统的...
### FAT文件系统规范详解 #### 一、概述 FAT(File Allocation Table)文件系统是微软公司在1970年代末至1980年代初为MS-DOS操作系统设计的一种简单而有效的文件系统。最初,它是为了适应小于500KB的软盘驱动器而...
FAT表(File Allocation Table 文件分配表),是Microsoft在FAT文件系统中用于磁盘数据(文件)索引和定位引进的一种链式结构。假如把磁盘比作一本书,FAT表可以认为相当于书中的目录,而文件就是各个章节的内容。但FAT...
标题中的“fat-support-for-unicode-Chinese.rar”表明这是一个关于FAT文件系统增强功能的项目,特别是增加了对Unicode汉字的支持。FAT(File Allocation Table)文件系统是Microsoft开发的一种广泛应用于磁盘存储...
1.研究FAT文件系统的物理布局。 2.掌握FAT文件系统中目录的结构与目录项定义。 3.掌握文件操作如建立目录,建立文件,删除文件,复制文件时,对FAT和目录的操作步骤。 4.合理设计文件系统布局与数据结构(直接用数组...
详细介绍了FAT文件系统(包括FAT12,FAT16,FAT32),不知是哪位牛人写的电子书详细介绍了FAT文件系统(包括FAT12,FAT16,FAT32),不知是哪位牛人写的电子书详细介绍了FAT文件系统(包括FAT12,FAT16,FAT32),不知是哪位牛人写...