Course description
This course provides a programmer's view of how computer systems execute programs, store information, and communicate. It enables students to become more effective programmers, especially in dealing with issues of performance, portability and robustness. It also serves as a foundation for courses on compilers, networks, operating systems, and computer architecture, where a deeper understanding of systems-level issues is required. Topics covered include: machine-level code and its generation by optimizing compilers, performance evaluation and optimization, computer arithmetic, memory organization and management, processes and concurrent computation, and networking technology and protocols.

Lecture M, W, 1:15-2:30, SHAN 2460
Lab F, 1:15-2:30, B102 and B105 Olin

Computer Systems, A Programmer's Perspective, 3rd Edition, by Randal E. Bryant and David O'Hallaron, Prentice Hall, 2015

Optional: The C Programming Language, 2nd Edition, by Brian Kernighan and Dennis Ritchie, Prentice Hall, 1988

Labs                             25%
Class participation        5%
Quizzes                        15%
Midterm exam             25%
Final exam                   30%

Late policy:
Late work is generally not accepted. Certified emergencies will be considered on an individual basis. 

Lab work groups:
  • You must work in teams (usually 2 people)
  • You must do all work with your partner(s)
  • Teams will be reassigned once during the semester
Honor code in cs105:
All students in cs105 are expected to conform to HMC's honor code. Please accept these conditions here: HMC's honor code. In CS105, specifically, other than with your lab partner you may not:
  • share code by copying, retyping, looking at, describing verbally, or supplying/receiving a file 
  • coach others or be coached by others on the specifics of a solution; e.g. the "trick" to solving a problem
  • search online for a solution
  • refer to solutions from previous semesters of CS105 or other courses
In short, all work you submit must be based on what you learned in class and from the text, what you were told by a professor or a grutor, and/or what you and your partner(s) deduced/discovered on your own.

Our goal is to make the course equally accessible to all of you. To request academic accommodations you'll contact the relevant disabilities resources person from your institution. Please let us know if you have any questions.
  • CGU: Chris Bass (chris.bass@cgu.edu)
  • CMC: Julia Easley (julia.easley@cmc.edu)
  • HMC: Deborah Kahn (dkahn@hmc.edu)
  • Pitzer: Jill Hawthorne (jill_hawthorne@pitzer.edu)
  • Pomona: Jan Collins-Eaglin (jan.collins-eaglin@pomona.edu)
  • Scripps: Sonia De La Torre-Iniguez (sdelator@scrippscollege.edu)