3.5.8
Files
All data on a storage medium, such as a hard disk o flash drive, is encoded as a single enormous list of ones and zeros. A file is a big clump of ones and zeros that are organized together.
Naming Rules
Another limitation of file systems is which characters can be used in filenames.
Compression
Compression is a way of making data consume less storage space. Compressed files are much more efficient the uncompressed files.
Size Limitations
Each file system has a limit to the maximum file size it can support. However, this is only a problem for old file systems. Modern file systems have limitations that are so large its impossible that a single file would ever approach the limit.
Encryption
Encryption is the process of converting information so that it cannot be understood without a necessary key to convert it back.
File Systems
File systems use a special file called a directory file to keep track of the information in storage. The directory file contains the names of all the other files in the system. The directory keeps track of the file name, extension, creation date, read/write permissions, and location on the disk. When the user tells the computer to open a file, it looks at the directory, then finds the appropriate location in storage to retrieve the file. Whenever a used adds, modifies, or deletes a file, the computer keeps track of the change in the directory file. This directory also contains subdirectories, or folders. Folders make the computers file structure easier for humans to understand by grouping similar files in the same directory.
Permissions
File systems use an Access Control List, or ACL, for each file and folder in the system. The ACL keeps track of which users can read, write, or delete each file.
File Extensions
There are millions of file types, and developers can make new ones whenever they need to. To determine a files type, you can look at the file name. In windows, a filename has two parts, separated by a period: The name of the file and the file extension.
Specific File Systems
There are several different files systems a computer may use. They generally do the same thing as far as the used is concerned but work differently behind the scenes. Older versions of windows used a system called File Allocation Table 32-bit, or FAT32. Modern Windows systems use NTFS, or New Technology File System. Most MacOS systems use the extended Hierarchical File System, or HFS+. Linux distributions use a system called ext4.
File Sharing
While file sharing can usually be accomplished more efficiently using the cloud, most file systems will allow users to share folders saved on their hard drives with users who are connected to the same local network.
File Formats
While its possible for a files data to be completely arbitrary, most files are organized in a specific way, called a file format. Using an image file as an example, files are organized by metadata and pixel data. The metadata store the total file size, the height and width of an image, the color depth, and other info the computer needs to process the file. The rest of the bytes in the file store the actual pixels that make up the image. When you tell a computer to open an image file, it looks at the metadata, then uses the information there to decode the file and show the picture.
Journaling
With journaling, every time a file changes the file system makes a note in its log. This is to prevent data loss in the case of power outage or other system malfunction.