18-344 Computer Systems and the Hardware-Software Interface
12 units, Carnegie Mellon University
This course covers the design and implementation of computer systems from the perspective of the hardware software interface. The purpose of this course is for students to understand the relationship between the operating system, software, and computer architecture. Students that complete the course will have learned operating system fundamentals, computer architecture fundamentals, compilation to hardware abstractions, and how software actually executes from the perspective of the hardware/software boundary. The course will focus especially on understanding the relationships between software and hardware, and how those relationships influence the design of a computer system's software and hardware. The course will convey these topics through a series of practical, implementation-oriented lab assignments.
Prerequisites: 18-240 (min C) and 18-213 (min C)
Offered: Fall 2026, Fall 2025
Courseweave needs JavaScript to show sections, workloads and planning tools.