The objective of this course is to provide a complete introduction to computer system, in a programmer’s perspective.
There are generally two main perspectives of view computer system: hardware view and software view. This course focuses on the software view, and especially, the programmer’s perspective.
The course will touch on the following topics:
Keywords: computer system, program performance, virtualization, concurrency
Required:
Recommended:
Friday, YG03-311.
| Week | Date | Lecture | Handouts |
|---|---|---|---|
| 1 | 2026/03/20 | Introduction, data representation | |
| 2 | 2026/03/27 | Machine programming | |
| 3 | 2026/04/03 | Linking, debugging and code optimization | |
| 4 | 2026/04/10 | The memory hierarchy | |
| 5 | 2026/04/17 | Virtual memory | |
| 6 | 2026/04/24 | Multitasking | |
| 7 | 2026/05/01 | – | |
| 8 | 2026/05/08 | Synchronization |
Not mandatory but recommended: