CSC373/406: Syllabus

Contact Information

Instructor:James Riely
Home Page:
Address: School of Computing, DePaul University
243 South Wabash Avenue
Chicago, IL 60604-2301
Office:CDM 846
Office Hours: Tue/Thu 3:00pm-4:00pm in CDM 846
Class Page:
Class Hours: Tue/Thu 1:30-3:00pm in CDM 220 [Section 601]
Online, Anytime [Section 610]

Mailing List

You must subscribe to the course mailing list. Do it as soon as possible.


This is a course on computer systems topics, focusing on machine-level programming and architecture and their relevance for application programming. We will discuss:


By the end of this class you will be a much better programmer.

By the end of this class you will understand how computer hardware works.

By the end of this class you will be ready for

Lecture Plan

The following lecture plan is tentative and subject to change as the course progresses.

Lecture slides will be available after each lecture. They will not normally be available before the lecture.


You need some programming background for this class. This can be fulfilled by any of the following:

We will not program in Java, Python or C++. We will be using C. We will cover necessary C topics as we need them, but I will assume that you already:

Your knowledge of these topics in Java, Python or C++ will easily transfer to C and will be critical to your success in this class.


Required Books

Computer Systems: A Programmers Perspective, Second Edition [Amazon, AddAll]

by Randal E. Bryant and David R. O'Hallaron (Prentice Hall, 2010)

Be sure to get the 2nd edition.

Online companion to the book:

System Programming with C and Unix [Amazon, AddAll]

by Adam Hoover (Addison-Wesley, 2010)

Online companion to the book:

The chapters covered in 373 are:

We do not cover any of the "optional" sections (indicated with *)


We will be using several unfamiliar tools:

You will work on three interesting (and time consuming) labs.

To succeed in the class you must engage the material actively. You will need to

Time is of the essence! You need to work early and ask questions early.

If you delay, you will be lost in incomprehensible morass!


You are responsible for understanding the material presented in class.

You are responsible for any announcements made in class or on the class mailing list.

If you are in the DL section or miss class, you should watch the lecture within 24 hours (ie, the day after the in class lecture.)

In-class students must attend class each week in order to receive credit for the quiz.

In-class students must attend the midterm and final exams.

A medical note will be required for an absence from exams. Business trips or vacations are not valid reasons for missing the exams.

Block out these dates now!

Online students can take exams remotely. Online dates will likely include the weekend before the in class date.

Class materials and recorded lectures are available online. Exams are proctored.

Read the policies here:

If you live in Chicago, you can take the exams at the Loop or Suburban campuses. If you live outside the Chicago area, you will need to find a proctor.

Your online section is paired with an on-campus section. These classes are recorded and uploaded into the Course Management system so you can view them within 24 hours of the live class. The first class is 2011/03/27-29. The lecture will be available online the following day.


There will be weekly quizzes (for in-class students), three labs, a midterm, and a final. The course grade will be computed as follows:

PLuS students may opt to skip weekly quizzes.

Numerical grades correspond to letter grades roughly as follows:

93-100 = A
90-92  = A-
88-89  = B+
83-87  = B
80-82  = B-        

In-class students must attend class each week in order to receive points for the weekly quiz. There will be no makeup quizzes, but I will drop the lowest two quiz scores; therefore, you may miss up to two classes without affecting your grade.

Quizzes will last five-ten minutes, and will be given immediately before the break. Quizzes will be based on the self-test problems in the text and will cover material from preceding classes, or from the first half of class. (You are expected to the read the material before class.) The first weekly quiz will cover prerequisite material.

Quizzes will be posted for DL students to do at home, but will not be considered in determining grades.

The midterm and final will be cumulative. You must earn a passing grade on the midterm and final to pass the course.

No late labs will be accepted. There will be no make-up exams, make-up quizzes, nor extra credit assignments. If there is an extreme emergency and you must miss an exam, you must notify me in advance and provide documented evidence of the emergency.

Students in DL sections may take the course remotely. They may take the exam at times different from the in class section, usually within a few days. Exact details will be provided on COL closer to the exam date.

DePaul's academic integrity policy