The data stored by our operating systems is written to a specific file system. In this video, you’ll learn about NTFS, ReFS, FAT/FAT32, exFAT, ext4, XFS, and APFS.
When you’re installing an operating system, one of the first things you do is create a partition where you can store data. But before you can store data into that partition, you first must format the partition. That formatting determines what file system you will use for that specific partition.
This file system is important because this is the structure that will be used for all data that is read and written by this operating system. And as you use different operating systems, you’ll see different file systems may be in use for that OS. Fortunately, there are some file systems that can be used across multiple operating systems. For example, FAT32, NTFS, and exFAT are examples of file systems that are compatible across Windows, Linux, and macOS.
If you’re using Windows, then the file system that you’re probably using is the NTFS, or NT File System. This file system was effectively an upgrade to FAT32, the File Allocation Table 32. There were a number of new features added with NTFS including things like compression, file encryption, you have quotas, and other management features built into the file system itself.
And because Windows is so popular, you’ll find NTFS is used across many different operating systems. Many of these other OSs will read NTFS information, although some operating systems are not able to write NTFS data. But if you’re using modern versions of Linux or macOS, you’ll find that you’re able to read and write information to an NTFS partition.
Microsoft is working on the next generation of file systems with the Resilient File System, or ReFS. The Resilient File System is effectively an upgrade to NTFS. And you’ll find certain levels of integration of ReFS available in Server 2012 and later. And you’ll find many of the modern Windows desktop operating systems can provide limited support for ReFS.
This is a file system that is designed not only for desktop systems but for server environments. For example, the Resilient File System has huge support requirements for very large data arrays so that you can support a huge amount of data in a single partition. And as the name implies, there is an emphasis in resiliency. This operating system is able to repair itself, and it’s constantly checking itself for integrity. You no longer have to run Check Disk or similar utilities just to be sure that your file system is working properly.
There is also some RAID-type functionality built into ReFS so that you can build out redundant file systems with redundant storage. However, the Resilient File System is not widely installed. And you’ll see that Microsoft is continuing with updates and improvements as time goes by.
A file system that’s been around for a very long time and one that has supported many different operating systems is the File Allocation Table, or FAT. If you were to find a system still using this today, it’s probably running a more recent version of the file allocation table, which is FAT32. Fat32 allows you to have volume sizes of 2 terabytes with a maximum file size of 4 gigabytes in that partition. But of course, these days, many of our storage systems are much larger than 2 terabytes, which means we would probably use a different file system than FAT32.
And if you have a flash drive, you plug into a USB drive, write some data, and then remove that USB drive, then you’re probably using exFAT, that stands for Extended File Allocation Table. And this was created by Microsoft specifically for flash drive storage. exFAT allows you to have files much larger than 4 gigabytes, exceeding the maximum in FAT32. And this is a file system that you can use across many different operating systems. So you can save something on your flash drive on Windows and then take it to your Linux or macOS system.
Another popular file system. You might run into is ext4. This is the fourth version or fourth iteration of the extended file system that you would commonly find in things like Linux or Android. So if you’re using an Android portable phone, then you’re probably using ext4.
Linux is used in many data centers, and there’s a file system that is specifically written for the high performance needed in those types of environments. This would be the Extended File System, or XFS. This is the file system you would install in Linux if you were performing very large data functions, high-speed processing, or anything that needed the most efficient way to store data. XFS supports a very large file system size, so we can store massive amounts of data on these systems.
This also includes journaling, which helps minimize any cases of corruption if any of this reading or writing of data happens to be interrupted. XFS also has a minimum amount of fragmentation. So if you’re writing information to a spinning hard drive, you’re going to have the best performance reading and writing that data.
Apple also has their own file system with the Apple File System or APFS. This was made available in macOS version 10, specifically 10.12.4. And this is also a file system available in your iOS and iPadOS devices. This file system was written to optimize data on SSDs or Solid State Drives. This builds in encryption, has the ability to quickly save and restore from a snapshot, and there is increased data integrity options within the APFS file system.
