CSE 306, Spring 2015: Operating Systems

Latest Announcements

2/9: Lab 2 posted.
2/5: Lab 1 deadline extended to 2/20.

See all announcements RSS 2.0 feed

Course Info

Course Objectives and Description

This course will introduce student to the structure of modern operating systems. Topics include virtual memory, resource allocation strategies, concurrency, and protection. Students will learn to design and implement operating system components.

If you follow the course readings, lectures, and homeworks, you will come out of this course with the following:

More philosophically, a computer scientist with an bachelor's degree should not view any part of the computer as "magic," but should either understand how it works or have the tools to figure it out. For instance, when one types a command at the console, what is the chain of hardware and software events that lead to the command returning the correct value?

Thus, an important part of the course will be the hands-on experience. For that, you will developing assignments on a Linux system. Some assignments will require low-level user-level programming; and some assignments will have you develop actual Linux kernel code.

Detailed information about the course is available on the syllabus.


Portions of this course design, organization, policies, syllabus, web design, etc. came from Gene Stark and Erez Zadok.

This course website was created using the Coursegen toolkit written by Dave Andersen and Nick Feamster. Thanks!

Last updated: 2015-07-16 09:46:36 -0400 [validate xhtml]