Apple has introduced a new file system for iOS, OS X, tvOS and watchOS and officially announced it at WWDC 2016. It is being named Apple File System (APFS) and has been developed for Flash/SSD storage and features strong encryption, space sharing, etc. Apple File System is considered as the Next-Generation File System for Apple Products.
As stated,
“The Apple File System (APFS) is the next-generation file system designed to scale from an Apple Watch to a Mac Pro. APFS is optimized for Flash/SSD storage, and engineered with encryption as a primary feature."
Image Credit - developer.apple.com
Need of a new file system
HFS+ is a proprietary file system developed by Apple and its predecessor, HFS, has been available for more than 30 years now. This file system was developed when floppy disks and spinning hard drives were used. Yes, the time when file sizes were calculated in KB or MB. A new file system was required, since nowadays, solid-state drives store millions of files, and that leads to GB or TB of data.
So, a new file system APFS was introduced to meet the current needs of Apple products. This will be a file system for future technologies as well.
APFS Supports Encryption Natively
AFPS is secure since security and privacy are fundamental in the design of the new file system. APFS supports encryption natively. It combines the following features present in previous OS versions into a unified model that encrypts file system metadata.
- OS X: Full Disk Encryption is part of OS X since OS X 10.7
- iOS: A version of data protection has been available since iOS 4 that encrypts each file individually with its own key. For more information, refer to the iOS Security Guide.
One of the below given encryption models can be chosen for each volume in a container,
- No encryption,
- Single-key encryption,
- Multi-key encryption
The integrity of user data even when its physical security is compromised is ensured by multi-key encryption.
Here are some of its other important features:
Space Sharing
Space sharing, as the name says, allows more than one file system to share the same free space on a physical volume. Apple File System volumes can grow/shrink without volume repartitioning, whereas rigid partitioning schemes pre-allocate a fixed amount of space for each file system.
Snapshots
It is a read-only instance of a file system on a volume. The snapshots can be of great help to the OS, it can be used to make backups work more efficiently. It also provides you with a element to revert changes to a given point of time.
Cloning - Files and Directories
Cloning does not occupy more storage space. A clone is a copy of a file or directory that does not occupy any additional space. On modifying a cloned file, the modified blocks are written to new locations on storage (not the complete file). So, multiple revisions can be stored by the file system with less storage space, since duplicated blocks won’t take up double space.
Containers
The base storage unit for APFS is known as a container and it manages its own space allocations and crash protection scheme. Each and every container exports one or more volumes, or file systems. Each of them has their own namespaces, or sets of files and directories.
Updates are crash-safe
Crash safe updated to the file system is ensured by a novel copy-on-write metadata scheme that APFS uses.
Sparse Files
The new file system also supports sparse files, unlike HFS+.
APFS has been released as a Developer Preview in OS X 10.12, and is scheduled to ship in 2017.