| Operating Systems Programming | |
| Hardware Basics | |
| Hardware and Software Interrupts | |
| CPU Scheduling | |
| The SR Programming Language | |
| Sequential Features | |
| Additional Sequential Examples and Features | |
| Lab: Sequential SR | |
| Assignment | |
| Multiple Resources | |
| Lab: Resources and Capabilities | |
| Assignment | |
| Additional Features | |
| Animating Programs with XTANGO | |
| Lab: XTANGO Animation | |
| Assignment | |
| Concurrent Programming | |
| Multiple Processes in One Resource | |
| Multiple Processes in Multiple Resources | |
| Simulated versus Real Concurrency | |
| Debugging Techniques | |
| Race Conditions and Process Synchronization | |
| Lab: Race Conditions | |
| Assignment | |
| Architecture and Shared Memory Systems | |
| The Mutual Exclusion Problem | |
| Semaphores | |
| SR Semaphores | |
| Classical Operating Systems Problems | |
| Semaphore Solutions | |
| The Producers and Consumers | |
| The Sleeping Barber | |
| The Dining Philosophers | |
| The Readers and Writers | |
| Binary Semaphores | |
| Lab: Semaphores | |
| Assignment: Fix Race Conditions | |
| Assignment: Multiple Producers and Consumers | |
| Assignment: Another Classical Problem | |
| Assignment: Multiple Sleeping Barbers | |
| Assignment: Dining Philosophers | |
| Assignment: Fair Readers and Writers | |
| Assignment: Baboons Crossing a Canyon | |
| Assignment: Fraternity Party | |
| Assignment: Jurassic Park | |
| Animating Operating Systems Algorithms | |
| Lab: Classical Problem Animation | |
| Assignment | |
| Monitors | |
| Monitors and SR | |
| The Producers and Consumers | |
| The Dining Philosophers | |
| The Readers and Writers | |
| Implementing Monitors with Semaphores | |
| Lab: Monitors | |
| Assignment: Fair Baboons | |
| Assignment: Sleeping Barber | |
| Assignment: Fair Dining Philosophers | |
| Assignment: Fraternity Party | |
| Assignment: Bakery | |
| Message Passing and the Rendezvous | |
| Message Passing | |
| Message Passing in SR | |
| Concurrent Programs and Message Passing | |
| Distributed Mutual Exclusion | |
| Miscellaneous Examples | |
| Lab: Message Passing | |
| Assignment: Merge Sort | |
| Assignment: Pipeline Sieve of Eratosthenes | |
| Assignment: Compare/Exchange Sort | |
| Assignment: Speedup | |
| Assignment: Algorithm Animation | |
| Assignment: Distributed Mutual Exclusion | |
| Rendezvous | |
| Classical Problems Using Rendezvous | |
| Nested in Statements | |
| A Lock Resource | |
| The Distributed Dining Philosophers | |
| RPC and Client-Server Programming | |
| Summary of Operations and Invocations | |
| Lab: Rendezvous | |
| Assignment: Fair Baboons | |
| Assignment: Sleeping Barber | |
| Assignment: Fair Readers and Writers | |
| Assignment: Fair Dining Philosophers | |
| Assignment: Fraternity Party | |
| Assignment: Bakery | |
| Assignment: Banker's Algorithm | |
| Assignment: Distributed Dining Philosophers | |
| More Animation with XTANGO | |
| Lab: Algorithm Animation | |
| Assignment | |
| Parallel Computing | |
| Coarse-Grained Concurrency in SR | |
| Patterns of Communication | |
| Data Parallelism | |
| Shared Memory Examples | |
| Message Passing Examples | |
| Integrating Animator into SR | |
| Lab: Parallel Computing | |
| Assignment: Speedup | |
| Assignment: Race Condition | |
| Assignment: No Race Condition | |
| Table of Contents provided by Publisher. All Rights Reserved. |






