CS 429: Systems I

Latest Announcements

2/14: Assignment 2 due date updated
1/27: Lab 2 is available

See all announcements RSS 2.0 feed

Course Objectives

NOTE: Syllabus is still subject to change.

To understand the basic operation of computing hardware, how it works, and how it interfaces to software Upon completing this course, students should have a high-level understanding of the role played by compilers, assemblers, instruction sets, and hardware. Students will also learn system-level programming and apply their knowledge of computer architectures to programming for performance.

A significant component of this course is the laboratory, which will have required meetings for two hours each week, outside of lecture. Students will be expected to prepare in advance of the laboratory, perform in-lab exercises, and complete laboratory assignments on their own.

Course Staff

Teaching Assistants

NameEmailOfficeOffice Hours
Tyler Smith PAI 5.33 desk 3 Wed 10:00 - 11:00


Owen Hofmann ACES 6SEo3f Fri 15:00 - 16:00


Required: Computer Systems: A Programmer's Perspective (2nd Edition) by Bryant and O'Hallaron

Recommended: The C Programming Language by Kernighan and Ritchie


Your final grade for the course will be based on the following approximate weights:

The course will include two in-class exams and a third exam on the last day of class, but held at 5pm. The third exam lasts 3 hours, and mostly focuses on the material from the last third of the course, but will include some questions from throughout the course.

Course Policies


Students are encouraged to talk to each other, to the course staff, or to anyone else about any of the assignments. Assistance must be limited to discussion of the problem and sketching general approaches to a solution. Each student must write out his or her own solutions to the homework. You should identify all collaborators in writing in your homework.

The student code of conduct is here.

Late Policy


The course materials are mostly derived from Bryant and O'Hallaron, Computer Systems A programmer's perspective. Additional material comes from Professors Stephen Keckler, Mike Dahlin, Donald Fussell and Warren A. Hunt Jr.

Last updated: Thu Mar 29 12:46:48 -0500 2012 [validate xhtml]