CS441 Schedule

Calendar feed: https://www.flyn.org/courses/cs441-2022-fall/schedule.ics
Date
Subject
Due
Read before class
Assigned
Tuesday, Sep 6 1. Introduction; intro Aquinas ssh, unix, git, and hello in C
Thursday, Sep 8 2. Operating system concepts Three Easy Pieces Ch. 1–2
Tuesday, Sep 13 3. Process model git and hello in C Three Easy Pieces Ch. 3–4 Aquinas unix2, man, and procman
Thursday, Sep 15 4. No class meeting
Tuesday, Sep 20 5. Limited direct execution; io.c io2.c Aquinas procman Three Easy Pieces Ch. 5–6 Aquinas preshell in C
Thursday, Sep 22 6. Process syscalls; fork.c wait.c waitpid.c exec.c
Tuesday, Sep 27 7. Basic file I/O, pipes, and redirection; redir.c pipe-dup2.c Aquinas preshell in C Aquinas shell in C
Thursday, Sep 29 8. More C; 0-spacing.c 1-printf.c 2-ptr.c 3-ptrptr.c 4-malloc.c 5-malloc2.c 6-ptrarith.c 7-errors.c 8-fnptr.c 9-2darray.c 10-valgrind.c
Tuesday, Oct 4 9. CPU scheduling; fairness.png characteristics.png comparison.png Aquinas shell in C Three Easy Pieces Ch. 7 Aquinas maxshell in C
Thursday, Oct 6
Tuesday, Oct 11 11. File I/O (pre-recorded video); video Aquinas maxshell in C Three Easy Pieces Ch. 39–40, 42
Thursday, Oct 13 12. Filesystems (pre-recorded video); video
Tuesday, Oct 18 13. Exam
Thursday, Oct 20
Tuesday, Oct 25 15. Memory management: introduction Three Easy Pieces Ch. 13, 15–16, 18 Aquinas memcarve in C and ptwalk in C
Thursday, Oct 27 16. Memory management: paging and TLB
Tuesday, Nov 1 17. Memory management: locality Aquinas memcarve in C denning; Three Easy Pieces Ch. 21–22 (Aquinas ptwalk in C)
Thursday, Nov 3 18. Memory management: page replacement strategies
Tuesday, Nov 8 19. Introduction to concurrency and threads Aquinas ptwalk in C Three Easy Pieces Ch. 25–26, 28
Thursday, Nov 10 20. Pitfalls of concurrency and locking
Tuesday, Nov 15 21. POSIX threads API; threads.c threads-fixed.c Three Easy Pieces Ch. 27, 30–32 Aquinas helgrind in C
Thursday, Nov 17 22. Reader-writer and dining philosophers; rw-read-prio.pdf rw-write-prio.pdf rw-mp.pdf
Tuesday, Nov 22 23. Practical virtualization and kernel development Aquinas helgrind in C
Thursday, Nov 24 24. Thanksgiving
Tuesday, Nov 29 25. IPC and networking; Makefile interface.x rpc-server.c rpc-client.c net-client.c net-server.c Three Easy Pieces Ch. 47–48 Aquinas unixsock in C
Thursday, Dec 1
Tuesday, Dec 6 27. Security Aquinas unixsock in C
Thursday, Dec 8
Tuesday, Dec 13