Welcome guest


File Systems

An integral part of an OS is what is known as a File System.  A File System is a methodology by which data and information are stored on storage devices (hard drives, floppy disc, etc.) and thus easily retrieved.  Different OS’s use different file systems but all have some very similar features.

The most important part of the file system is the method by which files are indexed on the hard drive. This index allows the OS to know at any given time where to find a specific file on the hard drive so that time is not spent endlessly searching for the file. This index is most typically based on file names. Depending on the operating system there are different file systems and thus different indexing methods.

In the Windows XP environment you will find one of two file systems, each with different indexing methods. The first is known as the FAT or FAT32 file system. This system uses what is known as a File Allocation Table to index the files on the disc. This file allocation table is very simple to implement and use, however can be somewhat slow. The other file system you may encounter when using Windows XP is known as NTFS. NTFS (NT File System) uses binary trees, that while complex, allow for very fast access times.

In the Apple OS X environment you will find the HFS+ file system. HFS+ (Hierarchal FIle System plus) uses something known as a B-Tree to index the files on the hard discs. B-Trees (which is different than a binary tree) allow for fast access time much like the binary tree.

Depending on which "flavor" of Linux you are running you may run into several different file systems. Some of them are EXT3, EXT2, and XFS. The most common is EXT3, which is a journaling extension to the EXT2 filesystem on Linux. Journaling results in massively reduced time spent recovering a file system after a crash. XFS is very fast and also uses B-Trees for its file indexing.