Principles of Operating Systems

Students will review classical operating system concepts (process and memory management, process coordination, device drivers, file systems, starvation/deadlock) before moving into modern topics of files systems (such as log-structured file systems, distributed file systems, memory-based file systems).

Assignments and lab work are focused on operating system design (monolithic, communication-kernel, extensible/adaptable, distributed shared memory), multiprocessor issues (scheduling, synchronization, IPC), and some aspects of security (Internet attacks, encryption, defenses). Students will also gain experience with inspection and modification of actual operating system code (Linux).

The course includes a weekly lab using a Unix-like operating system.

Areas of Study

Design and implementation of operating systems, process and memory management, resource scheduling, file system management, I/O and kernel services, and structuring.

Watch the Principles of Operating Systems course overview.

Learn More

Now is the time to earn your master’s online.