Gain in-depth understanding of operating system design and implementation through hands-on Linux modification in this comprehensive UC Berkeley course.
The purpose of this course is to teach the design of Operating Systems through both academic study and by making modifications to a modern OS (Linux). Topics covered include concepts of operating systems and systems programming, processes, interprocess communication, synchronization, memory allocation, loading and linking, resource allocation, scheduling, I/O systems, file systems, networking, protection, and security.
This course is recommended for students who have a strong background in computer science and are interested in gaining a deeper understanding of operating system internals and design. It provides a valuable opportunity to work directly with a real-world operating system and apply theoretical concepts in a practical setting.
Learn by Doing from Your Browser Sidebar
Simply install the browser extension and click to launch GetVM directly from your sidebar.
Choose your OS, IDE, or app from our playground library and launch it instantly.
Practice within the VM while following tutorials or videos side-by-side. Save your work with Pro for easy continuity.