12.4. Summary
We aim to make system issues clear and then discuss how they may be programmed. We have established the areas of systems where the model of processes sharing memory is appropriate: at the application level, where lightweight processes share an address space, and at the implementation level for any type of system. Chapters 10, 11 and 12 followed the development of concurrency constructs in high-level languages for shared-memory-based systems.
We have discussed the critical region construct, as one of the earlier forms of concurrency support. Its advantage is that the compiler supports the programmer by adding entry and exit protocols. However, it lacks modularization.
A monitor protects a single shared data object, by encapsulating ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access