15 410

Operating System Design and Implementation

Carnegie Mellon University · UGRD · Fall 2026

1 section
Add to a schedule

Catalog description

Operating System Design and Implementation is a rigorous hands-on introduction to the principles and practice of operating systems. The core experience is writing a small Unix-inspired OS kernel, in C with some x86 assembly language, which runs on a PC hardware simulator (and on actual PC hardware if you wish). Work is done in two-person teams, and "team programming" skills (source control, modularity, documentation) are emphasized. The size and scope of the programming assignments typically result in students significantly developing their design, implementation, and debugging abilities. Core concepts include the process model, virtual memory, threads, synchronization, and deadlock; the course also surveys higher-level OS topics including file systems, interprocess communication, networking, and security. Students, especially graduate students, who have not satisfied the prerequisite at Carnegie Mellon are strongly cautioned - to enter the class you must be able to write a storage allocator in C, use a debugger, understand 2's-complement arithmetic, and translate between C and x86 assembly language. The instructor may require you to complete a skills assessment exercise before the first week of the semester in order to remain registered in the class. Auditing: this course is usually full, and we generally receive many more requests to audit than we can accept. If you wish to audit, please have your advisor contact us before the semester begins to discuss your educational goals. Prerequisites: 18-447 Min. grade B or 15-411 Min. grade B or 15-418 Min. grade B or 15-440 Min. grade B or 15-441 Min. grade B or 15-445 Min. grade B Course Website: https://www.cs.cmu.edu/~410/

Sections

Current meeting, instructor, credit, and enrollment details

Updated 7 hours ago

001

Availability not recently verified
Class #carnegie_mellon-15410Fall 2026UGRD15 credits
Days & times
No scheduled meeting time
Meeting dates
Location
Instructor
Staff
Class numbers and section codes come from the registrar.
Spot missing or incorrect course data?