COMP 374: Introduction to Operating Systems

This course introduces principles of operating systems and how they are designed. Various important parts of operating systems such as memory addressing, file structures, processes, and threads are covered.

Credit Hours

3

Description

This is an introductory course in Operating Systems discussing both standalone and distributed environments. The focus of the course is to understand the underlying technologies that make contemporary operating systems work efficiently. We will discuss processes, threads, synchronization, I/O, file systems, memory management, transactions and system coordination techniques.

Through this course we will discover how these technologies are integrated into the systems we use today and then utilize these technologies and apply them to practical applications. This is NOT a programming intensive course, however, students will be expected to complete some programming in C with plenty of examples and assistance along the way. You certainly don’t need to know how to program in C today. In addition, the completion of a technical paper on an OS related subject will also be expected.

Everyone currently in, or planning to enter the IT field should have a grasp on these components as they effect every area of the day to day operation of IT technology. Reference systems will include both Linux and Windows.

Outcome

Students will learn the different parts of an operating system at a functional level and how they interact with each other.

Syllabi

Semester/Year Instructor URL
Spring 2013 Joe Kaylor http://osdi.cs.courseclouds.com
Spring 2012 Joe Kaylor and George K. Thiruvathukal http://osdi.cs.courseclouds.com