Course Overview

CS 4410 - Systems Programming and Operating Systems

CS 4410 covers systems programming and introductory operating system design and implementation. We will cover the basics of operating systems, namely structure, concurrency, scheduling, synchronization, memory management, filesystems, security and networking. The course is open to any undergraduate who has mastered the material in CS3410/ECE3140. Students enrolled in 4410 this fall can also choose to take 4411 and complete the practicum project (see below). This is highly recommended.

CS 4411 - Operating Systems Practicum

This is the project course for CS 4411. Students will learn about operating systems concepts through several bi-weekly assignments. Concepts covered include threading, synchronization, filesystems and networking. The projects will provide a hands-on experience with implementing operating system functionality, as well as low level programming with C.

Required textbook:

Operating System Concepts (8th Edition)
Silberschatz, Galvin and Gagne.

If you would like additional information or a different perspective on the topics covered in this course, this supplemental textbook is an excellent resource.

Modern Operating Systems (2nd Edition)
Andrew Tanenbaum.