As I look at the various discussion groups, what I am seeing is activity on the Apple and Gaming Boards. Apple, because of the Mac, and Gaming because of Play Stations and XBOX. These devices and systems don’t have exFAT capability yet, so you can’t format an external hard drive or USB stick with exFAT and expect the Mac or Gaming system to recognize it. And at this time, this even applies to Linux systems. The current systems that support exFAT is limited, and limited to:
Microsoft Windows XP, (SP2 or SP3) with KB955704
Windows Server 2003, (SP2 or SP3) with KB955704
Windows Vista or Windows Server 2008 with SP1 or higher
Windows 7 RTM (Release to manufacturing)
Earlier versions of Windows (ex: Windows NT, 2000), and DOS, and non-Microsoft systems don’t support exFAT. I see that many users are getting into trouble because they are formatting their devices in exFAT, and then when they try to move those devices to other systems (or devices) the media isn’t recognized. Then, the fun begins because those users don’t know how to convert/format to FAT32 or NTFS, and if they already put data on the exFAT system, then it becomes a conversion/migration issue, and there isn’t any easy way. The Windows CONVERT command won’t even convert exFAT to NTFS!
That leaves another problem, because if the media is larger than 32GB (which is more common with USB external disk drives than flash sticks) Microsoft doesn’t provide a way to format the device other than NTFS or exFAT. Microsoft doesn’t support formatting media larger than 32GB. The options are to use utilities from other vendors, which may include disk partitioning software. And there are some free limited versions that will do the trick. I am not going to name any names in this post – basically because I haven’t tested any. Of course you can use your Linux, Mac, or other non-Microsoft system to format the drive to FAT32 if needed. Microsoft will in most cases (but not all) support the larger FAT32 drive, is just won’t let you create it that way.
Another way that users are getting in trouble is that drives are being sold pre-formatted as NTFS, and some gaming systems don’t support NTFS, so the user formats the drive on their Vista or W7 machine, only gets the exFAT option, uses it, and then finds out – exFAT doesn’t work either.
So, what do I recommend?
It becomes the “look before you leap” scenario. Understand what file systems your OS and/or Devices will support, and where you will use the media. FAT32 is probably the most compatible file system as well as FAT16. However, when you get over a couple of GB, FAT32 is required. FAT16 and FAT32 is recognized in most cameras, GPS, phones, and other consumer electronics and devices. These file systems are more compatible than NTFS.
So, why are users going to NTFS or exFAT besides not understanding what is really going on under the covers? It looks like the answer to that question is the 4GB file size limit. FAT32 has a limit of 4GB in file size, probably because the file size is stored in a 32 bit number (4 bytes). NTFS and exFAT use a 64 bit number (8 bytes) which gives a theoretical maximum file size of 16EiB. [By the way, Microsoft blew it in the description of KB955704 when they said the maximum file size is up to 64ZiB. Forget that the maximum file space that can be supported can never reach 64ZiB either, the file system uses an 8 byte file size count in the stream extensions directory entry, so the number of bytes can never exceed 16EiB. Due to other limitations, it can never reach 16EiB either, that is why we say theoretical]
So, FAT32 won’t give you the larger than 4GB file size, which means you need to chop it up, or find NTFS and/or exFAT compatibility where you can get the larger file sizes. Breaking the 4GB limit was one of the reasons for SDXC going to exFAT, because recording long HD video AVI files will easily get larger than 4GB in size.
I have to wonder, since Microsoft has a vested interest in XBOX, I have to wonder why exFAT support hasn’t been added to that game system yet. At least to the new 2010 version.