Skip to main content

Persistence ordering and repeatable recovery

This required 22–32-hour package replaces the former three-hour storage simulator exercise: lessons and predictions 6–8, implementation and crash experiments 10–16, assessment and delayed repair 6–8. Estimates await learner pilots. Existing filesystem layouts, descriptors, devices, page cache, readiness and asynchronous I/O practice remains required. See the reconciled semester workload.

Prerequisite bridge​

Bring Semester 04's distinction between accepted writes and durable effects, Module 2's separation of cached and authoritative state, and Module 3's precise operation boundaries. Draw two copies of a value, label volatile/durable, and explain assignment versus increment. Use 1–2 hours inside lessons to repair gaps.

Learning sequence​

  1. Durability and acknowledgement.
  2. Record boundaries and replay.
  3. Crash matrices and storage assumptions.
  4. Prediction practice, runnable lab, FS1–FS6 and calibration.

Selective primary resources​

Use OSTEP Crash Consistency for the ordering problem and journaling context. Consult Linux fsync(2) for the real API boundary, including errors and the separate containing-directory persistence obligation. Sources checked on 2026-10-23. The model does not call fsync or test a device. Original OSTEP/Operating System Concepts selections remain the backbone; no purchase or book conversion is required.