Crash Consistency and Journaling
This document explains the crash-consistency problem in file systems and how journaling (write-ahead logging) effectively addresses it by recording transactions in a journal before applying changes to on-disk data. It covers fsck, journaling modes (data vs metadata journaling), recovery, and challenges like block reuse and protocols ensuring atomic updates despite crashes.