Bocconi links: course synopsis, course schedule
Room: Aula 5 (Sarfatti 25, ground floor)
Office hours:
Assignments:
Resources:
| Date | Time | Topics |
|---|---|---|
| Fri Sep 4 | 12:00 | Introduction |
| Part 1: How computers work | ||
| Boolean logic | ||
| Wed Sep 9 | 10:15 | Integers, characters and text |
| Hardware: integrated circuits | ||
| Fri Sep 11 | 12:00 | Hardware: instructions, memory |
| Mon Sep 14 | 13:45 | Software: compilation, OSs, virtualized memory, stack |
| Wed Sep 16 | 10:15 | Part 2: Software development |
| Shell (notes) | ||
[Tutorial] shell, SSH, ISA, files: secret.zip |
||
| Mon Sep 21 | 13:45 | Compiler invocation and build tools |
| Wed Sep 23 | 10:15 | [Tutorial] make |
| ↳ | 13:45 | Regular expressions |
[Tutorial] Regular expressions, files: t03_regex.zip |
||
| Version control systems | ||
| Mon Sep 28 | 14:45 | [Tutorial] git |
| Wed Sep 30 | 10:15 | Part 3: Correctness |
| ABIs, Portability | ||
| ↳ | 13:45 | Specifications |
| Undefined behavior | ||
| Fri Oct 2 | 12:00 | Fixed-point and floating-point arithmetic |
| Wed Oct 7 | 10:15 | [in-class assignment] |
| Fri Oct 9 | 12:00 | Static and dynamic code analysis, debugging, fuzzing |
| Wed Oct 14 | 10:15 | Part 4: Performance |
| Pipelined CPUs, memory, caches | ||
| Benchmarking, instrumentation | ||
| ↳ | 13:45 | [Tutorial] performance |
| Parallel computation | ||
| Fri Oct 16 | 12:00 | SIMD |
| (partials) | ||
| Wed Nov 4 | 10:15 | Multithreading |
| Fri Nov 6 | 12:00 | [Tutorial]
multithreading |
| Wed Nov 11 | 10:15 | Distributed computing and hardware acceleration |
| Mon Sep 30 | 13:45 | Projects |
| Day 1 | ||
| Wed Dec 2 | 10:15 | Day 2 |
| ↳ | 13:45 | Day 3 |
| Fri Dec 4 | 12:00 | Day 4 |