With Apple's licensing of Microsoft's exFAT file system, it seems like we finally have a good option for OS X and Windows disk swapping. Dave Girard spent some time investigating the appeal, the limitations, and the alternatives to exFAT.

One of the more painful areas of cross-platform computing is data sharing. While networking between Mac OS X, Windows, and Linux has gotten a lot easier thanks to SAMBA, disk sharing still feels like it’s in its infancy thanks to proprietary file systems and the unique legacy needs of the respective operating systems they run on. There are options for cross-platform file sharing—plenty actually—it’s just that each one presents its own limitations and appeals. With Apple’s licensing of Microsoft’s exFAT file system, it seemed like the main problem with FAT32—the 4GB file size limit—was put to rest, and many people are probably now using it to swap video libraries between their MacBooks and HTPCs or share downloads between OS X and Boot Camped Windows. But exFAT has its own issues and limitations that few people are probably aware of—and considering how few people even know about exFAT, we thought this was a good opportunity to cover it, along with the various alternatives.

exFAT: The savior of cross-platform file sharing?

First, a brief history of exFAT for those unfamiliar with it. exFAT is a proprietary Microsoft file system that was designed to bridge the gap between the NTFS file system and the more dated FAT32 file system. Its main advantages are that it can store files over 4GB since it is a 64-bit file system. Its max file size limitation is 16 EiB (Exbibyte) and its theoretical max capacity is 64 ZiB (Zebibyte), which our people in the lab have called “stupidly huge.” You won’t have any issues with hitting file size or capacity ceilings with exFAT. Since exFAT is a closed format, Apple had to license it to integrate it into OS X 10.6.5 and later. You can format a volume as exFAT within Disk Utility. I’ve read about people having issues with exFAT disks that were formatted using Snow Leopard’s (10.6.x) Disk Utility showing up in Windows. Apparently, Apple’s block size was correct according to the standard, but different enough from Windows’ default to cause it not to be recognized on the Windows side. So Snow Leopard users were forced to use Windows to format the drive as exFAT, and then it would show up fine in OS X. This seems to be fixed in Mountain Lion (10.8) since I didn’t have any issues getting the Mountain Lion-formatted exFAT partitions to show up in Windows 7. On the Windows side, native exFAT support is built into Windows as of Vista SP1, and exFAT drivers are available for older builds like XP. Since it’s a relatively new and proprietary format, Linux exFAT support is definitely lackluster, but there is an implementation of exFAT as a FUSE user-space level file system. I haven’t personally tried it.

exFAT limitations and things to keep in mind

Before you run out and format everything as exFAT, you should understand its limitations—and they aren’t insignificant. exFAT has no file system-level encryption or compression support, and, like FAT32 before it, there is no journaling built into the exFAT file system. This means it has a much higher probability of data loss than with NTFS or HFS+. Since FAT32 and exFAT are common USB stick file systems, TFAT and TexFAT are driver-level additions to FAT32 and exFAT volumes that address the lack of journaling in much the same way that Apple has with HFS+ in OS X. But those are currently only implemented in mobile OSes. That's not it. exFAT also isn’t supported by Time Machine in OS X, which requires an HFS+ volume. Another odd limitation of exFAT support in OS X is that you can’t create a software RAID array in exFAT format, but you can do it with the FAT32 format. It also has very limited permission and ACL support for those who need to isolate different users from certain files. If you're just planning on sharing a video or music library, this isn't a problem. Still, the lack of journaling could be problematic. In the limited testing I did, bundled OS X applications launched fine from an exFAT volume. I wouldn’t recommend installing apps to a non-HFS+ volume, though, since the lack of permissions support could probably cause issues with larger applications. For content developers and designers looking to share files between Macs and PCs, you should have no issues using exFAT as a bridge format. You should be careful when copying older Mac fonts to an exFAT-formatted disk, though. Older Mac PostScript font suitcases have resource fork data that is not retained when copied to non-HFS or HFS+ volumes (HFS is the older pre-OS X file system, for those wondering). So if you’re using anything other than HFS+ disks, it’s best practice to use the Finder to zip your fonts if you’re transferring older suitcase-based PostScript fonts. The OS X Finder’s zip supports resource forks—that’s one of the reasons it creates the __MACOSX folder in zip archives. Newer font formats like OpenType don’t use resource forks, so newly purchased fonts won’t be an issue on non-HFS+ volumes.

A brief look at some exFAT alternatives

Some NTFS options

Since the NTFS file system has been around for a while, it is now well supported across all OSes with some free and commercial options. As a cross-platform file system, NTFS’s major appeal is that it supports journaling across all OSes—without any driver-level fixes or workarounds. By default, OS X reads NTFS volumes but can’t write to them. You need additional software to get write access to these NTFS disks. The FUSE-based NTFS-3G was the most appealing option since it was free, but it hasn’t been updated since 2011 so I wouldn’t recommend it. Two popular Mac options are Tuxera NTFS, which is a FUSE-based implementation, and Paragon NTFS for Mac. Both packages offer control over volume caching, NTFS-specific options, and some handy additions for full Mac OS X compatibility: ? Both Paragon and Tuxera let you format NTFS right from within Disk Utility, but Paragon is the only one that supports formatting of NTFS compressed volumes and full journaling of NTFS disks. At $20, it’s also currently $10 cheaper than Tuxera. After you see the benchmark results, it should be pretty clear which is the choice to go with.

The HFS+ options

Apple’s Boot Camp drivers install read-only support of HFS+ volumes by default so you can access those Mac partitions within Windows. Early versions were very unstable and caused frequent BSODs, but the latest version seems to work fine. The lack of write support is the real drawback, so you’ll need MacDrive for that. As the best-known HFS+ driver for Windows, Mediafour’s MacDrive has been around for a while now. I’ve used MacDrive for years and have always liked its feature set. Apart from the basic read/write features, it lets you set volumes to read-only in case you don’t want Windows messing with your volumes. If you format a partition on a Mac OS X volume within Windows, MacDrive will protect the main partition info so that your other Mac volume data is unaffected. This frequently came in handy when formatting the test partition for the benchmarks in Windows 7 SP1. The Pro version of MacDrive adds support for OS X HFS+ software RAID volumes, secure delete, and auto-defragmentation, which could be a boon to multimedia users who prefer to keep large media files from being fragmented. MacDrive has partial support of journaling—if your machine lost power or the drive was removed while copying in OS X, it will read the journal entry and try to complete the copy. But if you're in Windows, MacDrive does not edit the journal, so you get no journaling support for file system operations done within Windows. At $49.99 for MacDrive Standard and $69.99 for the Pro option, that makes MacDrive a harder sell given the slight handicap when compared to Paragon in OS X. Obviously, if you have an external HFS+ software RAID you need to share, MacDrive Pro is the only option. But if you are starting with disks from scratch, NTFS is the cheaper option.