About CS 3010 A

Supervisory and control software for multiprogrammed computer systems. Processes, threads, synchronization, interprocess communication, scheduling, memory management, resource allocation, performance evaluation, secondary storage, case studies. Prerequisites: CS 2300 and CS 2210.


Prereqs enforced by the system: CS 2300 & CS 2210; Open to Degree and PACE students

Section Description

CS3010 will provide a broad overview of operating systems, focused primarily on Linux. We will pursue an in-depth investigation of these topics: the OS kernel and kernel mode; concurrency and threads; synchronization, CPU scheduling, memory management, I/O devices, and file-system management. From this course, students will become proficient in developing system-level programs in C, on Linux. The text will be Operating System Concepts: Principles and Practice, 2nd Edition, by Anderson and Dahlin.

Section Expectation

The instructor will discuss and elaborate on the material from the text in class. Students will be expected to understand the material and apply it to several programming projects. Students will learn concepts by creating several C programs on Linux that apply the various concepts from class. There will be a midterm exam and a final exam and several short in-class quizzes covering concepts from the lectures.


Course grades will be based on the midterm and final exams; the programming projects; in-class quizzes covering concepts from the lectures; and attendance.

Important Dates

Note: These dates may change before registration begins.

Note: These dates may not be accurate for select courses during the Summer Session.

Last Day to Add
Last Day to Drop
Last Day to Withdraw with 50% Refund
Last Day to Withdraw with 25% Refund
Last Day to Withdraw


There are no courses that meet this criteria.

Interest Form

CS 3010 A is closed to new enrollment.

But we can remind you a few days before the next term opens. You can also see what terms are enrolling currently.