MAC 5017 Computer Systems
The course objective is to integrate key notions from algorithms, computer architecture, operating systems, compilers, and software engineering in one unified framework. This is done constructively, by building a general-purpose computer system from the ground up. In this process, students explore many ideas and techniques used in the design of modern hardware and software systems. Throughout this journey, students gain many cross-section views of the computing field, from the bare bone details of switching circuits to the high level abstraction of object-based software design.