Lecture Section L02: Tuesdays &
Thursdays, 10:00 - 11:20am in Staller M0113 (Sergey Madaminov)
The following course schedule schedule is TENTATIVE and subject to change. Readings are taken from Computer Systems: A programmer's Perspective, 3rd edition by Bryant and O'Hallaron. You will gain more from lecture if you complete the readings before coming to class.
| Week of | Lecture Topics | Book Readings |
|---|---|---|
| 1/29 | Administrative; System Software Overview | 1 |
| C for Java Programmers | online C reference | |
| 2/5 | C for Java Programmers | |
| C for Java Programmers | ||
| 2/12 | C for Java Programmers | |
| C for Java Programmers | ||
| 2/19 | Dynamic Memory Allocation | 9.9-9.11 |
| Dynamic Memory Allocation | ||
| 2/26 | System Stack: Hardware Interrupts, Hardware Exceptions & Software Exceptions | 8.1-8.4 |
| System Stack: Hardware Interrupts, Hardware Exceptions & Software Exceptions | ||
| 3/5 | Midterm #1 (Tentative) - C Programming, Dynamic Memory Allocation | |
| System Stack: Hardware Interrupts, Hardware Exceptions & Software Exceptions | ||
| 3/12 | System Stack: OS Signals | 8.5-8.8 |
| System Stack: OS Signals | ||
| 3/19 | SPRING RECESS - NO LECTURE | |
| SPRING RECESS - NO LECTURE | ||
| 3/26 | System Stack: POSIX abstractions (pipes, fork, files, etc) | 10 |
| System Stack: POSIX abstractions (pipes, fork, files, etc) | ||
| 4/2 | Concurrent Programming - Thread overview | 12.4-12.8 |
| Concurrent Programming - Semaphores | ||
| 4/9 | Concurrent Programming - Shared Resource, Deadlock and Race conditions | |
| Concurrent Programming - Shared Resource, Deadlock and Race conditions | ||
| 4/16 | Performance & Benchmarking | 5.14 |
| Memory Hierarchy and Caches | 6 | |
| 4/23 | Caches | |
| Midterm #2 (Tentative) - Exceptions, Processes, POSIX (including related C constructs) | ||
| 4/30 | Cache Performance | 6.5-6.6 |
| Virtual Memory | 9.1-9.8 | |
| 5/7 | Virtual Memory | |
| Linking and memory mapping | 7 | |
| 5/17 | Final Exam |