Thursday, December 31, 2009

What is exFAT

Microsoft developed a new file system called the Extended FAT File System (exFAT) back in 2006 when it released Windows CE 6.0. This file system has many features of NTFS but less overhead than NTFS and earlier legacy FAT file systems.



Some features of exFAT are:




  • Sector sizes from 512 bytes to 4096 bytes

  • Cluster sizes up to 32MiB

  • Sub directories up to 256MiB

  • Built for speed, less overhead then previous FAT and even NTFS

  • Extensible for future enhancements

  • Plans for Access Control Permissions on file objects

  • Plans for Transaction Safe FAT

  • UTC Timestamp support

  • OEM Parameters section in VBR

  • Larger VBR with 9 sector boot code (vs. 3 VBR sectors in FAT32)

  • Potential file system capacity to 64ZiB

  • Up to 2796202 files per subdirectory

There is confusion and disagreement on the maximum size of the exFAT volume, with many theoretical limits expressed. This post will attempt to demystify some of these limits.

A Microsoft Knowledge Base article (Microsoft (September 2009)) states a theroetical maximum volume size of 64ZiB. As seen on other web sites, such as NTFS.COM with their file system comparison called NTFS vs. FAT also indicates the maximum volume size of 64ZiB. This number is the result of the following calculations: Microsoft has imposed an implementation limit of 212 (4096 bytes) as a sector size limit. In the VBR is an 8 byte number than can specify up to 264 sectors. This can result in a volume space of 276 bytes, which is 64ZiB. This sounds good on paper, but there is one slight catch, since the FAT cell entries are 32 bits in size and can address at most 232 clusters, this would require a cluster size of 244 bytes, or 16TiB. Think about that, 16 tebibytes for ONE cluster. With the exception of high end server file systems, you will rarely see an entire file system being that large, and this is just one block.

The current exFAT implementation’s maximum is smaller, and is 128PiB. Here is how this value is calculated: Microsoft has limited the maximum cluster size to 225 bytes (32MiB). This number is reached by multiplying the sector size by the number of sectors per cluster. The sector size may be defined between 29 (512 bytes) and 212 (4096 bytes) and the product of these 2 values cannot exceed 225 bytes. Next, we look at the FAT entries which are 4 bytes and can track 232 of these clusters. This calculates to a maximum volume space of 257 bytes (128PiB).

Microsoft in their recent licensing announcement states “support from 32GB to 256TB” (Microsoft Press Pass (2009)). This new stated limit is 248. The origins of this new limit is currently unknown, but if you take the maximum sector size which is 212 and block it one sector per cluster, at 232 clusters, you will get 248. Analysis of the exFAT file system was performed on different storage media 500MB or less, so 32GB is not a lower limit either. Unlike FAT32 that requires a minimum number of clusters to be configured, it appears that exFAT does not have that restriction.

exFAT Timeline:

  • September 2006 – Windows CE 6.0 (HPC Factor (2009))
  • March 2008 – Notable Changes in Windows Vista Service Pack 1 (Microsoft (2008))
  • January 2009 – Announcement at CES of SDXC specification (Hissink , Dennis (2009))
  • January 2009 – Windows XP Drivers Available (Microsoft (September 2009))
  • August 2009 – Tuxera Signs File System IP Agreement with Microsoft (Galli, Peter (2009))
  • March 2009 – Pretec Releases first SDXC Cards (Herrman, John (2009))
  • December 2009 – Microsoft announces exFAT license program for third-parties (Microsoft Press Pass (2009)) (Johnston, Stuart (2009))
  • December 2009 – SDXC laptops due soon (December 2009) (Halfacree, Gareth (2009))
  • December 2009 – Diskinternals releases exFAT recovery utility (Yahoo News (December 3rd, 2009))


References

Fontana, John (2009). Microsoft expands exFAT multimedia file system licensing. Network World (December 10, 2009). Website: http://www.networkworld.com/news/2009/121009-microsoft-exfat-multimedia-file-system.html?fsrc=netflash-rss

Galli, Peter (2009). Tuxera Signs File System IP Agreement with Microsoft (August 26, 2009) Website:

http://port25.technet.com/archive/2009/08/26/tuxera-signs-file-system-covenant-with-microsoft.aspx

Griffith, E. (2008). OS Wars: The Battle for Your Desktop, PC Magazine, Vol. 27, No. 4, March 1, 2008.

Halfacree, Gareth (2009). SDXC laptops due soon (December 1, 2009) Website:

http://www.bit-tech.net/news/hardware/2009/12/01/sdxc-laptops-due-soon/1

Herrman, John (2009). First SDXC Card Is The World's Fastest, Only Holds 32GB. (March 6, 2009). Website:

http://gizmodo.com/5165352/first-sdxc-card-is-the-worlds-fastest-only-holds-32gb

Hissink , Dennis (2009). CES Show Report: SDXC flash memory cards (January 7, 2009) Website: http://www.ces-show.com/

HPC Factor (2009). The History of Windows CE: Windows CE 6.0 & into the future... Article Last Reviewed October 9, 2009. Website: http://www.hpcfactor.com/support/windowsce/wce6.asp

International System of Units (SI). Website: http://physics.nist.gov/cuu/Units/binary.html

Johnston, Stuart (2009). Microsoft Licenses exFAT to Third Parties. (December 10, 2009). Internetnews.com. Website: http://www.internetnews.com/software/article.php/3852686/Microsoft+Licenses+exFAT+to+Third+Parties.htm

Larkin, Eric (2007). Vista Resistance: Why XP Is Still So Strong, September 26, 2007. Website: http://www.pcworld.com/article/137635/vista_resistance_why_xp_is_still_so_strong.htm

Microsoft Intellectual Property Licensing for exFAT. Website: http://www.microsoft.com/iplicensing/productDetail.aspx?productTitle=exFAT File System Licensing Program

Microsoft MSDN AA914663. OEM Parameter Definition with exFAT. Website: http://msdn.microsoft.com/en-us/library/aa914663.aspx

Microsoft MSDN EE681827. File System Functionality Comparison. Website: http://msdn.microsoft.com/en-us/library/ee681827(VS.85).aspx

Microsoft MSDN CC907928. TexFAT File Naming Limitations. Website: http://msdn.microsoft.com/en-us/library/cc907928.aspx

Microsoft Patent 0164440 (June 25, 2009). Quick Filename Lookup Using Name Hash. Pub No. US 2009/0164440 A1 Website: http://www.pat2pdf.org/patents/pat20090164440.pdf

Microsoft Patent 0265400 (October 22, 2009). Extensible File System. Pub No. US 2009/0265400 A1 Website: http://www.pat2pdf.org/patents/pat20090265400.pdf

Microsoft Patent 7613738 (November 3, 2009). FAT Directory Structure for use in Transaction Safe File System. Pub No. US 7613738 B2 Website: http://www.pat2pdf.org/patents/pat7613738.pdf

Microsoft Press Pass (2009). Microsoft’s Latest Flash Memory Technology Now Available for License. (December 10, 2009). Website: http://www.microsoft.com/presspass/press/2009/dec09/12-10msflashtechpr.mspx

Microsoft (2004). Local File Systems for Windows. (May 5, 2004) Website: http://www.microsoft.com/whdc/device/storage/LocFileSys.mspx

Microsoft (2008). Microsoft Notable Changes in Windows Vista Service Pack 1 (March 2008). Website: http://technet.microsoft.com/en-us/library/cc709618(WS.10).aspx

Microsoft (September 2009). Description of the exFAT file system driver update package. Q955704. Website http://support.microsoft.com/kb/955704

NTFS.COM. NTFS vs. FAT. Website: http://www.ntfs.com/ntfs_vs_fat.htm

SD Card Association. SDXC. Website: http://www.sdcard.org/developers/tech/sdxc

US Department Of Justice (2004). Forensic Examination of Digital Evidence: A Guide for Law Enforcement. Website: http://www.ncjrs.gov/pdffiles1/nij/199408.pdf

Yahoo News (December 3rd, 2009). The World's First Data Recovery for exFAT Drives! Website: http://news.yahoo.com/s/prweb/20091203/bs_prweb/prweb3275634

No comments:

Post a Comment