Schedule
-
EventDateDescriptionContentNotes
-
Weekly topicsWeek of Monday
01/11/2021MIT’s missing semester module goes into these topics in a lot more detail.
For git specifically, Dangit, git can be quite helpful. There is no discussion quiz this week. -
Weekly topicsWeek of Monday
01/18/2021Linking & Symbol resolution- Book: 7.1 - 7.9
- intro to linking
- symbol resolution
- symbol relocation
MLK day, no lab
-
Weekly topicsWeek of Monday
01/25/2021Loading executables, PIC- Book: 7.9-7.12
- Why dynamically link?
- Loading, using the GOT and PLT
-
Weekly topicsWeek of Monday
02/01/2021Control flow- Book: 8.1-8.2
- Introduction
- Exceptions
- Processes
-
Weekly topicsWeek of Monday
02/08/2021System Calls- Book: 8.3-8.4
- strace zine
- fork/exec/posix_spawn/clone
-
Weekly topicsWeek of Monday
02/15/2021Signals & Shells- Book: 8.5
- Signals
-
Weekly topicsWeek of Monday
02/22/2021Files- Book: 10.1-10.8
- file descriptors
- interacting with files
- file descriptor tables, `dup2`
-
Weekly topicsWeek of Monday
03/01/2021Virtual Addressing, paging, and caching- Book: 9.1-9.4
- virtual memory intro
- the magic of the page fault
-
Weekly topicsWeek of Monday
03/08/2021Memory management, address translation- Book: 9.5-9.6
- using page tables
- multi level page tables
-
Weekly topicsWeek of Monday
03/15/2021Dynamic Memory Allocation & Garbage collection -
Weekly topicsWeek of Monday
03/29/2021Memory mapping, review- Book: 9.7-9.8
- mmap
-
Weekly topicsWeek of Monday
04/05/2021The design behind the Internet -
Weekly topicsWeek of Monday
04/12/2021Sockets, Connections, HTTP- Book: 11.4 - 11.5
- The Socket API
- The Basics of HTTP
-
Weekly topicsWeek of Monday
04/19/2021Concurrency concepts- Book: 12.0-12.3
-
Weekly topicsWeek of Monday
04/26/2021Semaphores- Book: 12.4-12.5