A volume is the set of all file system structures and data space necessary to store and retrieve user data. All exFAT volumes contain four regions (see Table 3).

Table 3 Volume Structure

Sub-region NameOffset(sector)Size(sectors)Comments
Main Boot Region
Main Boot Sector01This sub-region is mandatory and Section 3.1 defines its contents.
Main Extended Boot Sectors18This sub-region is mandatory and Section 3.2) defines its contents.
Main OEM Parameters91This sub-region is mandatory and Section 3.3 defines its contents.
Main Reserved101This sub-region is mandatory and its contents are reserved.
Main Boot Checksum111This sub-region is mandatory and Section 3.4 defines its contents.
Backup Boot Region
Backup Boot Sector121This sub-region is mandatory and Section 3.1 defines its contents.
Backup Extended Boot Sectors138This sub-region is mandatory and Section 3.2 defines its contents.
Backup OEM Parameters211This sub-region is mandatory and Section 3.3 defines its contents.
Backup Reserved221This sub-region is mandatory and its contents are reserved.
Backup Boot Checksum231This sub-region is mandatory and Section 3.4 defines its contents.
FAT Region
FAT Alignment24FatOffset – 24This sub-region is mandatory and its contents, if any, are undefined.Note: the Main and Backup Boot Sectors both contain the FatOffset field.
First FATFatOffsetFatLengthThis sub-region is mandatory and Section 4.1 defines its contents.Note: the Main and Backup Boot Sectors both contain the FatOffset and FatLength fields.
Second FATFatOffset + FatLengthFatLength * (NumberOfFats – 1)This sub-region is mandatory and Section 4.1 defines its contents, if any.Note: the Main and Backup Boot Sectors both contain the FatOffset, FatLength, and NumberOfFats fields. The NumberOfFats field may only hold values 1 and 2.
Data Region
Cluster Heap AlignmentFatOffset + FatLength * NumberOfFatsClusterHeapOffset – (FatOffset + FatLength * NumberOfFats)This sub-region is mandatory and its contents, if any, are undefined.Note: the Main and Backup Boot Sectors both contain the FatOffset, FatLength, NumberOfFats, and ClusterHeapOffset fields. The NumberOfFats field’s valid values are 1 and 2.
Cluster HeapClusterHeapOffsetClusterCount * 2SectorsPerClusterShiftThis sub-region is mandatory and Section 5.1 defines its contents.Note: the Main and Backup Boot Sectors both contain the ClusterHeapOffset, ClusterCount, and SectorsPerClusterShift fields.
Excess SpaceClusterHeapOffset + ClusterCount * 2SectorsPerClusterShiftVolumeLength – (ClusterHeapOffset + ClusterCount * 2SectorsPerClusterShift)This sub-region is mandatory and its contents, if any, are undefined.Note: the Main and Backup Boot Sectors both contain the ClusterHeapOffset, ClusterCount, SectorsPerClusterShift, and VolumeLength fields.