Skip to main content

COM S 352 (Fall 2020)

By Peter Hamer - Ken Thompson (sitting) and Dennis Ritchie at PDP-11Uploaded by Magnus Manske, CC BY-SA 2.0,

352 Home







Introduction to Operating Systems

Introduction to Operating Systems is an undergraduate-level introduction to topics in operating systems including system calls, processes, threads, concurrency, CPU scheduling, synchronization, deadlocks, memory management, file systems, networking, distributed systems and security.

Course Activities

The graded activities for the course are 10 assignments, 2 projects, a midterm exam and a final exam.

Required Reading


Abraham Silberschatz, Peter B. Galvin and Greg Gagne. Operating Systems Concepts, Enhanced eText, 10th Edition, 2018.
Description: This textbook is an introduction to the concepts involving operating systems. We have selected readings from chapters 1-10, 13, 14, 17 and 19.
Availability: Registered students will have access to the ebook through Immediate Access, no action needs to be taken, your u-bill will be automatically charged, be aware that there is a limited time to opt-out of Immediate Access.

Optional Reading


Douglas Comer. Operating System Design: The Xinu Approach, Second Edition, 2015.
Description: If you want to really understand the nuts and bolts of how operating systems work, this book covers the step-by-step construction of a small but fully capable OS called Xinu.
Availability: The first edition Linsys version is available online from the library via O’Reilly for Higher Education.


Remzi H. Arpaci-Dusseau and Andrea C. Arpaci-Dusseau. Operating Systems: Three Easy Pieces, 2018.
Description: This book covers the fundamental concepts of operating systems.
Availability: It is available for free as an ebook or you can buy the book in print, visit

Online Resources

Compiler Explorer

AnimOS CPU-Scheduling