1.1 - File Systems
Introduction to File Systems
Definition of a file system: A file system is the structure used for organizing and storing data on a storage device.
Importance of file systems: The file system determines how data is read and written by the operating system, making it a fundamental component when installing an operating system.
Creating a Partition
Steps in installing an operating system start with creating a partition.
A partition is a section of a storage device designated for a particular filesystem.
Formatting is required before data can be stored in that partition.
Formatting determines the file system utilized for that partition.
File Systems Overview
Different operating systems employ various file systems.
Some file systems are cross-compatible across multiple operating systems.
Example file systems compatible across Windows, Linux, and macOS include:
FAT32
NTFS
exFAT
NTFS (New Technology File System)
NTFS is predominantly used in Windows operating systems as an upgrade to FAT32.
Features of NTFS include:
Compression: Reduces the size of files and folders to save space.
File Encryption: Protects files by encrypting them.
Quotas: Allows administrators to control disk space utilization by users.
Other management features: Advanced features for file management to enhance performance.
Compatibility with other operating systems:
Many other OSs can read NTFS information;
Modern versions of Linux and macOS can read and write NTFS data.
ReFS (Resilient File System)
ReFS is being developed as the successor to NTFS by Microsoft.
Early integration seen in Windows Server 2012 and later versions.
Key characteristics of ReFS:
Designed for both desktop and server environments.
Capable of handling large data arrays, supporting significant data volumes in single partitions.
Emphasis on data integrity, with self-repair capabilities.
Constantly checks its integrity without needing to run utilities like Check Disk.
Built-in RAID functionalities to create redundant file systems.
Current status:
Adoption is limited; Microsoft continues to update and improve ReFS.
FAT32 (File Allocation Table 32)
FAT32 is a widely recognized file system that has been around for many years.
Specifications of FAT32 include:
Maximum volume size: 2 terabytes
Maximum file size: 4 gigabytes
Limitations:
As storage technology advances, systems larger than 2 terabytes necessitate alternative file systems.
exFAT (Extended File Allocation Table)
exFAT was created by Microsoft, specifically for flash drive storage solutions.
Advantages of exFAT:
Allows file sizes larger than 4 gigabytes, unlike FAT32.
Facilitates cross-platform use, enabling file transfer between Windows and other OSs (Linux, macOS) via flash drives.
ext4 (Fourth Extended File System)
ext4 is an advanced file system version commonly found in Linux and Android operating systems.
Operating context:
Frequently used in Android portable devices and Linux data centers.
XFS (Extended File System)
XFS is designed for high-performance scenarios, primarily in Linux environments.
Characteristics of XFS:
Supports efficient storage of very large data sets, performed by massive data operations with high-speed processing needs.
Journaling capabilities minimize data corruption risks during read/write interruptions.
Low fragmentation rates enhance performance on traditional spinning hard drives.
APFS (Apple File System)
APFS, introduced in macOS version 10.12.4, is tailored for SSDs and used across Apple's ecosystem, including iOS and iPadOS.
Features of APFS:
Optimizes storage management on SSDs.
Built-in encryption for enhanced security.
Quick snapshot capabilities for efficient backups and restores.
Increased options for data integrity management.