This book proposes a method for deriving explicit synchronization commands needed for multiprocess programs to execute correctly on multiprocessor computers. Modern multiprocessors require these commands to manage memory access coordination. The proposed method derives these necessary commands directly from a correctness proof of the algorithm itself.
Readers will learn how to bridge the gap between a proven-correct algorithm and its implementation on a multiprocessor, ensuring reliable execution. The book's core contribution is a technique for translating algorithmic correctness into the explicit synchronization primitives that hardware demands, thereby guaranteeing that a multiprocess program executes as intended.
Key concepts
- Multiprocess Program — A program designed to run multiple processes concurrently.
- Multiprocessor Computer — A computer system with multiple processing units.
- Memory Access Synchronization — Explicit commands to ensure the order and correctness of memory operations from different processes.
- Correctness Proof — A formal demonstration that an algorithm meets its specified requirements.