CS 414 - Systems Programming and Operating Systems
CS 414 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 CS 314. Students enrolled in 414 this fall can also choose to take 415 and complete the practicum project (see below). This is highly recommended.
CS 415 - Operating Systems Practicum
This is the lab course for CS 414. Students will learn about operating systems concepts through 5 bi-weekly assignments. Concepts covered include threading, synchronization, filesystems and networking. Students taking this course should be familiar with the C programming language and comfortable with C's memory management functions.