UDF (a FAT32 replacement) Part 2

Comparison of cross platform filesystems for flash memory and/or external hard drives.

The Universal Disk Format (UDF) is maintained by Optical Storage Technology Association while FAT32 and exFAT are maintained by Microsoft.

FAT32’s primary limitation is its 4GB file size limit. Microsoft also recommends limiting Volumes formatted in FAT32 to be limited to 32 GB, although many implementations support larger volumes.

Microsoft created exFAT to get around the limitations of FAT32 relating to file and volume size limitations.

Overall, exFAT and UDF appear to be very comparable. They both support Unicode filenames and long filenames.
UDF supports a journaling and ECC (Error Correction Codes). The MacOS format utility provides an option for specifying the number of blocks to use for ECC. I assumed that this option was some type of ratio, but when I changed the number from 1 to 2, my formatted drive had exactly one block less space available. UDF “journaling” features are designed around optical media, so it is unclear if flash and hard drive implementations of UDF use the Logical Volume Integrity Descriptors.

Overall, FAT32 has the best compatibility. It is supported by nearly every device from phones, to cameras, to picture frames.

If you are only concerned with accessing your data from a computer, UDF is probably the file system to pick since Linux’s support for exFAT is not 100%.

Next I’m going to explore the compatibility of UDF and exFAT in other devices.


  1. UDF Spec – http://www.osta.org/specs/pdf/udf260.pdf
  2. FAT32 Spec – http://msdn.microsoft.com/en-us/library/windows/hardware/gg463080.aspx
  3. exFAT Spec – unable to find
  4. exFAT description – http://support.microsoft.com/kb/955704
  5. exFAT description – http://en.wikipedia.org/wiki/ExFAT

One thought on “UDF (a FAT32 replacement) Part 2

  1. sanjit

    I have tried udf on my 32GB flash drive. I found an exceptional speed increase in transferring small files. A 600MB folder of pictures just took 2 min 30 s which was previously took more than 4min 30s. But large file performance dropped. An 1GB video file that took 2 minutes now takes about 3 minutes and I found out the reason. UDF allocation size is 512 bytes which favours small files and adversly affects large files. AFAIK there is no way to set cluster size for udf. I tried “format fs=UDF unit=4k quick” in win7 diskpart but the command was not taken. Is there any way to set the cluster allocation size?

Comments are closed.