CS429H (378H) - Systems I (Honors)
(Computer Organization,
Architecture,
and Programming)


Course: Systems I
CS 429H
Unique Numbers: 53590, 53595
Instructor: Prof. Donald S. Fussell
ACES 2.120
Phone: 471-9719
fussell@cs.utexas.edu
Office Hours: Mon 11:00-12:00, Wed 11:00-12:00
Teaching Assistant: Christian Miller
ckm@cs.utexas.edu
Office: PAI 5.33
Office Hours: Mon 1:30 - 3:30
Lectures: MW 9:00-11:00am, PAI 3.14
Lab: F 9:00-11:00am, PAI 3.14
Class Information: WWW: www.cs.utexas.edu/users/fussell/cs429h
Required Textbook: Computer Systems: A Programmer's Perspective, Second Edition Randal E. Bryant and David O'Hallaron, ISBN 0-13-610804-0, 2011.
Note that while this book is not inexpensive, you will be using for both Systems I and Systems II.
The text can be purchased from the University Co-Op.
Prerequisites: Programming II with a grade of at least C. Students must be enrolled in the Turing Scholars program or have permission from the instructor.


Course Objectives

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.

Student Evaluation

Your performance in this class will be evaluated through homework assignments, laboratory assignments, three midterm exams, final exam, and any quizzes we have throughout the semester. Each student's lowest midterm score will automatically be dropped. The weights of each of these components is listed below:

For each midterm exam, you may bring a non-programmable calculator and a single 8 1/2 x 11 sheet of handwritten notes (no photo-reduction). In class exams will be 50 minutes in duration according to the schedule. There will be no make-up quizzes or exams. The final exam is scheduled for:

In-class quizzes will be administered at the discretion of the instructor and will be unannounced. These quizzes will be short and will be open-book/open-note. If you stay up on your reading assignments and are prepared for each lecture, these quizzes should be easy.

Laboratory Assignments will be due at the beginning of the class period (lecture or laboratory) as specified in each assignment. Programming components of the laboratory assignments will be submitted electronically and will require you to use your departmental Unix account. You may not email your assignments to the teaching staff. Programs will be graded on correctness, readability, style, documentation, and performance.

You have a "late account" of 3 days for the term which you can spend any way you choose for your lab assigments. For example, you can turn in three lab assignment one day late each, or one lab assignment 3 days late, without penalty. An assignment is late if it is not turned in at the beginning of your assigned discussion section. It is one day late until 5pm of the day after it is due, two days late from then until 5pm of the second day, and three days late from then until 5pm of third day. Once you have exhausted your late account, no late assignments will be accepted. You are responsible for turning in your assignment to your discussion section TA. The departmental homework drop box will not be used.

Academic Misconduct Policy

You are free to discuss the course material with your classmates and are encouraged to form study groups for the exams. However, collaboration on homework or programming assignments is not permitted unless explicitly stated by the instructor. Helping a friend understand the intent of a homework or programming assignment specification is permitted. Students who work together too closely (e.g. design their solution together) should be aware that this is a form of cheating called COLLUSION and is subject to academic penalties. Penalties for academic misconduct include a failing grade in this course.

The homework, programs, and exams must be the work of students turning them in. University policy (see Dean of Students' policies on academic integrity) will be followed strictly.

Acts that exceed the bounds defined by the approved collaboration practices will be considered cheating. Such acts include:

We urge everyone in the class to take appropriate measures for protecting one's work. You should protect your files, homework solution sheets, etc. as deemed reasonable.

Studying for tests together is permitted and encouraged. Please come talk to us if you are unsure about how to work together with your friend in a legal, helpful manner. Remember, it is always ok to "work together" with your professor or TA!

Your Responsibilities in This Class:

Other General Information

The programming assignments will require use of the Department of Computer Sciences instructional computing resources. All CS students who meet the prerequisites for CS310H are eligible for a CS departmental Microlab account and undergraduate Unix account. Important links:


Course Material Outline
Course Schedule


Last modified: 04/25/11 by Don Fussell fussell@cs.utexas.edu