Animations for

Operating Systems, Sixth Edition

by William Stallings



Chapter 5 - Concurrency: Mutual Exclusion and Synchronization

Semaphores: Demonstrates the bounded-buffer consumer/producer problem using semaphores.
Producer-Consumer: Illustrates the operation of a producer-consumer buffer.
Reader-Writer: Illustrates the interaction of readers and writers.
Message Passing: Demonstrates the bounded-buffer consumer/producer problem using messages.
Eisenberg-McGuire Algorithm: Illustrates a software approach to mutual exclusion.

Chapter 6 - Concurrency: Deadlock and Starvation

Banker's Algorithm: Illustrates operation of the Banker's Algorithm.
Solaris RW Lock: Illustrates operation of Solaris RW Lock.

Chapter 8 - Virtual Memory

Page Replacement Algorithms: Covers random, first-in-first-out (FIFO), least recently used (LRU), and most frequently used (MFU).
Clock Page Replacement Algorithm: Animation of this algorithm.

Chapter 9 - Uniprocessor Scheduling

Process Scheduling Algorithms: Covers first-come-first served (FCFS), round robin (RR), shortest process next (SPN), and shortest remaining time (SRT).

Chapter 10 - Multiprocessor and Real-Time Scheduling

Aperiodic with Starting Deadline: Compares first-come-first served (FCFS) with earliest deadline with unforced idle time (EDUIT).
Periodic with Completion Deadline: Illustrates earliest deadline
Rate Monotonic Scheduling: Animates this algorithm.

Chapter 11 - I/O Management and Disk Scheduling

Disk Scheduling Algorithms: Covers first-come-first served (FCFS), shortest service time first (SSTF), SCAN, C-SCAN, LOOK, and C-LOOK.
RAID: Illustrates RAID 0 through RAID 4.

Appendix A - Topics in Concurrency

Barbership Problem: Illustrates the operation of the barbershop.



Animations developed by Harjot S. Bains, Jie Zhang, Matt Garber, Winnie Yuen, and Tim Valdepena

Development work done at the College of Engineering and Computer Science, California State University at Sacramento