Understanding file systems is fairly straightforward, even though it might seem to be something daunting at first. Various operating systems and storage devices each utilize different types of file systems, and this determines compatibility (and creates compatibility problems).
This article will not only serve to acquaint you with why so many types of file systems exist (and what file systems essentially are), but knowing this will also help you understand the mechanics of data recovery, the importance of data privacy, and issues of compatibility and RAW partition/drive that might arise.
How do File Systems Work?
To define a file system, let’s first understand what a file is. Of course, you already know files as the various and different pieces of data you have on your phone and computer, such as documents, images, videos, audios, software, and so on, but the way the computer defines it is in terms of 1’s and 0’s, a block of data.
In terms of the files we encounter from day to day, that block of data is termed a cluster. A cluster is made out of much smaller blocks of data, called sectors, which is usually taken to be 512 characters (with those characters being known as ‘bytes’). Clusters range from a kilobyte of data (twice the size of a sector) to 32KB. You might have heard this term in disk cleaning which removes inefficiently large clusters that waste disk space due to unused space at their end.
Thus, a file stores data in the form of clusters, data which we take to be meaningful information in the form of something we’ve made, saved, received, and so on. As is evidenced by the fact that clusters can be cleaned up, data is not actually stored sequentially – these clusters can be anywhere on the disk, in any order, and Windows simply maintains a “list” of which file has which clusters.
These files are then stored in directories, such as folders. To maintain each directory, to know what information which directory contains, and how the directory is structured, is according to what’s known as a file system.
File systems can then be understood in terms of an index or database that contains every cluster of data’s physical location, whether it is on another storage device or the hard drive itself, mostly in terms of directories. Thus, the file system provides a way of separating data into different files, indexing the different files for the operating system to quickly find them and pull them up, as well as storing data about the data – different attributes such as which users have permission access to the files when the files were created, modified, or last accessed, the file size, et cetera.
Why do we Need All These Types of File Systems?
The different types of file systems are thus different types of organizational and storage methods and structures, with each partition on each storage drive having a set file system (as opposed to a raw file system, wherein no Windows file system is present, and no files or folders can exist or be stored).
Some of us might have had the experience of formatting a USB disk or file drive and coming across an option for file systems such as NTFS or Win32.
Every “format” thus creates a blank file system of the allotted type on that partition. This is particularly useful when a certain OS doesn’t understand a certain file system, in which case either a file system driver can be installed, or the partition can be re-formatted.
Common Types of File Systems And Their Differences
The Windows 10 file systems are all-too commonly known: NTFS and FAT32 are options that pop up when formatting a pen drive or a portable USB disk, particularly the latter. That is because FAT32 is the older of the Windows file systems but is still used on small removable storage devices as well as set-top boxes, gaming consoles, DSLRs, et cetera. The modern version, NTFS, has been in use since Windows XP and owes its popularity and wide usage to features such as journaling, encryption, and access control.
Linux file systems, on the other hand, are far more varied due to its open-source nature and willingness to test and implement all kinds of systems. Some of these include Ext, ReiserFS, XFS, JFS and the Oracle-developed Btrfs.
While these can be categorized as types of file systems, they are actually examples of file systems.
For a popular type of file system that can now be understood based on what we’ve discussed in this article, let’s discuss NFS file systems.
The NFS, or Network File System as its properly known, is a type of distributed file systems protocol that allows a user to view, access, store, and update files as a remote client on a remote computer. Used for network-attached storage, it is a client/server application to be specific, whereas the distributed file system is a method based in a client/server architecture.
Continuing from the last paragraph, we can conclude by repeating what we said at the start: file systems are straightforward to understand, even though they’re complex architectures. They work so reliably well to not even be perceptible to the end-user that something is working behind-the-scenes in a way that’s upholding the entire functioning.