Introducing computer systems from a programmer's perspective

Randal E. Bryant, David R. O'Hallaron
2001 ACM SIGCSE Bulletin  
The course "Introduction to Computer Systems" at Carnegie Mellon University presents the underlying principles by which programs are executed on a computer. It provides broad coverage of processor operation, compilers, operating systems, and networking. Whereas most systems courses present material from the perspective of one who designs or implements part of the system, our course presents the view visible to application programmers. Students learn that, by understanding aspects of the
more » ... ng system, they can make their programs faster and more reliable. This approach provides immediate benefits for all computer science and engineering students and also prepares them for more advanced systems courses. We have taught our course for five semesters with enthusiastic responses by the students, the instructors, and the instructors of subsequent systems courses.
doi:10.1145/366413.364549 fatcat:vadeqnggq5cfpjnqyl4jup7hby