15.10. Summary

Computer systems crash and main memory is lost on a crash. If a single operation invocation takes place in the main memory of a single computer and has no externally visible effects then there is no need for crash resilience. If the operation has written to a persistent object we have to decide what to do if there is a crash before it completes. We should design operations to be idempotent (repeatable) if it is possible to do so, but this is not always possible.

We defined atomic operations on persistent objects as a basis for studying the more general case. An atomic operation either completes successfully, in which case its results are guaranteed to persist, or the system state is restored as though the operation had never been ...

Get Operating Systems: Concurrent and Distributed Software Design now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.