Description: This course will teach the way computer systems work from the low level device interrupts up to processes, threads, memory management, file systems and security. One main aspect of this course will be programming projects, which will help you gain valuable practical experience in computer systems. We will spend some class time exploring hands-on learning, so please come to class prepared to write code.

Specific Outcomes:
Understand the objectives and functions of modern operating system.
Describe and use techniques for achieving concurrency and synchronization.
Explain the workings of a system with virtual memory management.
Understand security risks and protection mechanisms for computer systems.

Instructor: Mirela Damian, Professor of Computer Science