Other file systems, with an outline of vfs and vnodes used by the kernel, and how they’re important in checking code signatures.
APFS
This reference covers fsck_apfs, diskutil information, diskutil apfs, conversion of HFS+ to APFS, mount_apfs, and newfs_apfs.
Overview of clone files, dataless files, sparse files, symbolic links, and firmlinks, and how used and free space is accounted for in APFS.
Keybags, wrapping keys, VEKs and KEKs all explained. Did you realise how Recovery Keys are implemented? Or how the SSV protects against read errors?
What’s in an APFS snapshot, and how the stages in its life-cycle work, from creation, through mounting and unmounting, to deletion and cleanup.
Where would you find a 7C3457EF-0000-11AA-AA11-00306543ECAC? How UUIDs have taken over to identify so much, and how to generate your own.
From the GPT division of storage space, through APFS containers, down to individual volumes, an account of how APFS works.
Introduced in iOS 10.3 on 27 March 2017, then in macOS 10.13 six months later. It ups and downs, and where it still has further to go.
B+trees, directory records, directory and file names and Unicode normalisation, and whatever happened to the promise of fast directory sizing?
We’re almost unaware of clone files, and how they’ve changed macOS. But look at most documents that have been saved more than once, and you’ll see they’ve now be cloned.
