ScheduleΒΆ
The schedule will change as the course progresses, in part based on student interests. If you are particularly interested in some topic not covered here, send mail to the course staff (mailto:sibin.mohan@oregonstate.edu).
Monday | Tuesday | Wednesday | Thursday | Friday |
Mar 28 Study, Lab 1: Booting a PC |
Mar 29 LEC 1: Course Intro SLIDES Watch 1: Lecture #1 OLD_VIDEO Read: Textbook Read: at&t_asm GDB tutorial1 tutorial2 cheat-sheet Read: tmux cheatsheet (ctrl-b -> backtick) tmux-cheat-sheet Read: Missing Semester of CS First day of class |
Mar 30 Watch 1: Tutorial 1 VIDEO SLIDES |
Mar 31 LEC 2: BIOS/Booting SLIDES Read: 5 Steps of Boot Process Read: Linux Boot Process and GRUB2 |
Apr 1 |
Apr 4 Watch 2: Tutorial 2 - Booting Process and Calling convention VIDEO SLIDES |
Apr 5 LEC 3: 1. Booting Part 2 SLIDES and 2. Memory Extension SLIDES Watch 2: Lecture #3.1 BOOT PROCESS (complete) VIDEO. Watch 3: Lecture #3.2 VIRTUAL MEM VIDEO. Read: Textbook1 Textbook2 Textbook3 Read: SeaBIOS Read: ELF Format |
Apr 6 | Apr 7 LEC 4: 1. Multiprogramming SLIDES and 2. Virtual Address Translation SLIDES Read: x86_Address_Translation Read: Page_Table |
Apr 8 |
Apr 11 Watch 3: Tutorial 3 - Physical Memory Management VIDEO SLIDES Study, Lab 2: Memory Management |
Apr 12 LEC 5: 1. Paging Virtual Mem Translation SLIDES, 2. JOS Memory Management SLIDES and 3. Virtual Memory Permissions and Setup (extra) SLIDES Watch 4: Lecture #5.1 VIRTUAL MEMORY 2 VIDEO Watch 5: Lecture #5.2 JOS MEMORY VIDEO Watch 6: Lecture #5.3 PERMISSIONS AND SETUP VIDEO Read: Textbook1 Textbook2 Textbook3 Textbook4 Textbook5 Textbook6 |
Apr 13 Read: Sample for Quiz #1 QUIZ_PDF ANSWER KEY |
Apr 14 Quiz 1: Virtual Memory |
Apr 15 Lab 1 Due |
Apr 18 | Apr 19 LEC 6: Quiz 1 Review SLIDES Watch 7: Lecture #6 QUIZ 1 REVIEW VIDEO |
Apr 20 Watch 4: Tutorial 4 - Virtual Memory Management VIDEO SLIDES |
Apr 21 LEC 7: User and Kernel Spaces SLIDES Watch 8: Lecture #7 USER/KERNEL VIDEO Read: Textbook-process Textbook-syscall Textbook-trap |
Apr 22 |
Apr 25 Watch 5: Tutorial 5 - User Environments and Exception Handling VIDEO SLIDES Study, Lab 3: User Environment |
Apr 26 LEC 8: Handling Interrupts/Exceptions SLIDES Watch 9: Lecture #8 INTERRUPTS/EXCEPTIONS VIDEO |
Apr 27 Watch 6: Tutorial 6.1 - Resolving make errors VIDEO Watch 7: Tutorial 6.2 - GDB to resolve Triple Faults VIDEO Watch 8: Tutorial 6.3 - KERNBASE and Struct PageInfo* pp VIDEO Watch 9: Tutorial 6.4 - Resolving assertion and panic errors VIDEO |
Apr 28 LEC 9: System Calls and Page Fault SLIDES Watch 10: Lecture #9 SYCALLS/PAGEFAULTS VIDEO Read: READ VM-swapping1 VM-swapping2 VM-others |
Apr 29 |
May 2 Watch 10: Tutorial 6 - Page faults, Breakpoint Exceptions, System Calls VIDEO SLIDES |
May 3 LEC 10: Virtualization Recap and Quiz 2 Prep SLIDES Watch 11: Lecture #10 VIRTUALIZATION RECAP/QUIZ 2 VIDEO |
May 4 | May 5 Quiz 2: System calls, faults, and exceptions |
May 6 Lab 2 Due |
May 9 | May 10 LEC 11: Multi-threading and Synchronization SLIDES Watch 12: Lecture #11 MULTITHREADING/SYNCHRONIZATION VIDEO Read: READ Concurrency Thread |
May 11 | May 12 LEC 12: Locks and Synchronization SLIDES Watch 13: Lecture #12 LOCKS VIDEO Read: READ Locks |
May 13 |
May 16 Watch 11: Tutorial 7 - Multiprocessor Support and Multitasking VIDEO SLIDES Study, Lab 4: Preemptive Multitasking |
May 17 LEC 13: Locks 2 SLIDES Read: READ Exponential Backoff |
May 18 | May 19 LEC 14: Concurrency Bugs and Deadlock SLIDES Watch 14: Lecture #14 CONCURRENCY BUGS/DEADLOCK VIDEO Read: READ Bugs Read: READ Code Snippets |
May 20 Lab 3 Due |
May 23 Watch 12: Tutorial 8 - Copy-on-Write Fork, Preemptive Multitasking, Interprocess Communication (IPC) VIDEO SLIDES Read: Sample for Quiz #3 QUIZ_PDF ANSWER KEY |
May 24 Quiz 3: Concurrency |
May 25 | May 26 LEC 15: Schedulers |
May 27 |
May 30 | May 31 LEC 16: Schedulers (contd.) |
Jun 1 | Jun 2 | Jun 3 The last day of class |
Jun 6 | Jun 7 Final exam week (NO FINAL!) |
Jun 8 Lab 4 Due |
Jun 9 Final exam week (NO FINAL!) |
Jun 10 DUE: All labs (50% for all others) |