Systems Programming and Computer Architecture - Fall 2019

What's new?

  • 16.10.2019: Important, the next two weeks will be taught partially by guest lecturers and partially cancelled:
    • Tuesday, 22nd of October: Lecture by Michael Giardino, HG E 7
    • Wednesday, 23rd of October: Q&A session (send questions to Lukas Humbel)
    • Tuesday, 29th of October: No lecture
    • Wednesday, 30th of October: Lecture by Jialin Li, NO C 80
  • 30.9.2019: We updated the first assignment handout: It will now detect extra variables/functions defined and reject the solution. Please re-download the datalab-handout.tar.gz (or just follow the rules described in the pdf).
  • 17.9.2019: The exercise sessions will start on the 24th of September. No exercise session will take place on the 18th of September.


This course introduces the fundamental concepts, mechanisms, and techniques that underpin how computer systems process information, execute programs, and interact with the outside world. We focus on computing immediately above and below the boundary between hardware and software, and expose students to the practical issues that affect performance, portability, robustness, and extensibility through assembly language, the C programming language, and computer hardware from the perspective of systems software.

Topics include:

  • Representing information in computer systems
  • Systems programming in C
  • Assembly language and compiled code
  • Sequential, pipelined, and multicore processor design
  • Caches and the memory hierarchy
  • Performance optimization and performance measurement
  • Devices, I/O, traps, and DMA
  • Memory management

Main Text and Reference books

Computer Systems: A Programmer's Perspective by Davie Richard O'Hallaron and Randal Bryant



Course Hours


  • Tue 10-12h, HG E 7
  • Wed 10-12h, NO C 60


Name Language Time Room
R. Achermann (acreto at inf) Deutsch (+ Englisch) Wed 13-15 CHN D 42
S. Gal (stagal at student) Englisch (+ Französisch) Wed 13-15 CHN G 22
D. Schwyn (schwyda at inf) Deutsch (+ Englisch) Wed 13-15 ETZ F 91
C. Erdmann (erdmannc at student) Deutsch (+ Englisch) Wed 13-15 ETZ G 91
G. Arcuti (arcutig at student) Deutsch (+ Englisch) Wed 13-15 HG D 3.3
D. Ittah (ittahd at student) Englisch (+ Deutsch) Wed 13-15 LEE D 105
N. Neugebauer (niklasn at student) Deutsch (+ Englisch) Wed 13-15 ML H 34.3