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. |