SteveHawk's Blog

exFAT 文件系统



1. 目的

由于闪存设备容量日益增加,微软于 1996 年发布的 FAT32 系统不再能够满足需求。FAT32 的最大不足在于只支持最大 4 GB 的单个文件,这在很多情况下是不可接受的,也不满足 SDHD 标准的要求。于是微软在 2006 年发布了 exFAT 文件系统,又名 FAT64,旨在解决 FAT32 的诸多问题。

2. 结构

2.1 简介

2.2 详细说明

2.3 簇堆

簇堆是 exFAT 文件系统设置簇是否保存数据的地方,其构造如下:

  • Root Directory 根目录

  • Files 文件

  • Directories 目录

  • Bitmap Allocation Table 簇堆分配位示图

  • UP-Case Table 大写转换表

簇的分配状态由簇堆自己的 Bitmap Allocation Table 追踪。

2.4 目录结构

exFAT 使用树状结构来描述文件和目录之间的关系。根目录树定义目录在 RootDirectoryCluster 之中。子目录单向连接到它,(.) 和 (..) 目录指向自己本身和父目录,这像 FAT16/FAT32一样。每个 directory 包括一系列的目录条目,目录条目的优先等级如下:

  • Primary Directory Entries

    1. Critical Primary Entries
    2. Benign Primary Entries
  • Secondary Directory Entries

    1. Critical Primary Entries
    2. Benign Primary Entries

Critical entries 是必须项,benign entries 是可选的,Primary directory entries 对应文件系统中的条目,Secondary directory entries 是 primary directory entry 数据扩展和关联。一组 primary/secondary entries 组成 directory entry 设置文件或目录,设置第一个 directory entry 为 primary directory entry,所有子条目必须是 Secondary directory entries 。

3. 优点

exFAT 相较于之前 FAT 文件系统的优势在于:

4. 缺点

exFAT 比过去的 FAT 文件系统的劣势在于:

5. 应用

如果有跨平台使用 u 盘 / 硬盘的需求,那 exFAT 将会是一个很好的选择(如果需要使用 Windows XP 或者更老的系统,那还是请使用 FAT32)。exFAT 在 Windows,MacOS,Linux 上均有原生支持,并且支持大文件的存储。


#courses
本文总字数 1402
本文阅读量
本站访客量

↪ reply by email