CMSC412

Operating Systems

Prerequisite: Minimum grade of C- in CMSC330 and CMSC351; and 1 course with a minimum grade of C- from (CMSC414, CMSC417, CMSC420, CMSC430, CMSC433, CMSC435, ENEE440, ENEE457). Restriction: Permission of CMNS-Computer Science department; or must be in one of the following programs (Computer Science (Master's); Computer Science (Doctoral)). Credit only granted for: CMSC412 or ENEE447. A hands-on introduction to operating systems, including topics in: multiprogramming, communication and synchronization, memory management, IO subsystems, and resource scheduling polices. The laboratory component consists of constructing a small kernel, including functions for device IO, multi-tasking, and memory management.

Spring 2026

5 reviews
Average rating: 2.60

Fall 2025

12 reviews
Average rating: 2.25

Spring 2025

5 reviews
Average rating: 2.60

Past Semesters

12 reviews
Average rating: 2.25

5 reviews
Average rating: 2.60

12 reviews
Average rating: 2.25

12 reviews
Average rating: 2.25

12 reviews
Average rating: 2.25

5 reviews
Average rating: 3.20

12 reviews
Average rating: 2.25

0 reviews
Average rating: N/A

2 reviews
Average rating: 3.50

During the Spring 2020 and Spring 2021 semesters, students could choose to take some of their courses pass-fail mid-semester which skews grade data aggregated across multiple semesters.

Average GPA of 2.49 between 1,194 students*

CMSC412 Grade Distribution+-05101520253035% of studentsABCDFWother
A-: 8.12%
A: 9.72%
A+: 8.21%
B-: 7.54%
B: 14.74%
B+: 8.29%
C-: 7.37%
C: 8.63%
C+: 7.62%
D-: 0.25%
D: 3.43%
D+: 0.25%
F: 4.86%
W: 9.21%
other: 1.76%
* "W"s are considered to be 0.0 quality points. "Other" grades are not factored into GPA calculation. Grade data not guaranteed to be correct.