A file system is a way of organizing data on a computer as a hierarchical of directories containing files.
Most operating systems provide a file system, which is usually presented to the user graphically using the metaphor of folders containing documents and other files. The hierarchy is presented either as a tree or as nested folders.
Most file system sits on top of an underlying storage system that manipulates an array of fixed-size blocks. The file system software is responsible for organizing these blocks into files and directories, and keeping track of which blocks are not being used. Usually the underlying storage system is non-volatile storage such as a hard drive or flash memory.
Implementing a system to store arbitrarily-sized files on disk is a complex process, particularly when considering that most file systems offer facilities for arbitrary resizing, creation, deletion, and in-place modification. Such a file system generally makes up a major part of an operating system. In fact, early microcomputer operating systems only real task was such file management - a fact reflected in their names.
Access to files is often controlled by a system of file permissions.
Disk File Systems:
- FAT (MS-DOS and Microsoft Windows file system; 12, 16 and 32 bit table depths)
- HFS (for Mac OS)
- ISO9660 (Rock Ridge and Joliet are extensions to this)
- NTFS (Versions 4, 5 and 5.1)
Network File Systems:
Special Purpose File Systems: