In this course students will learn about the structure of operating systems, and concepts such as processes, threads, inter-process communication, scheduling, resources, deadlocks, virtual memory, paging, input/output, file systems.