The course gives an introduction to computer system from digital design, the main components of a computer and its architecture to the abstraction of a virtual machine with compiler and operating system.
Basic computer knowledge
- Construction of logical components, composition of the processor and the hardware and machine code of the computer and assembler.
- Virtual machine with a stack abstraction and compilation from VM to assembler.
- Compilation from high-level language to virtual machine.
- Fundamentals of operating system.
- Commonly occurring architectures with instruction set, cache structures and process kernels, and speculative execution.
Specialisation in selected aspects of operating system
- Implementation of a command interpreter for a UNIX system.
- Reverse compilation
- The Linux kernel
- Signals, Pipes