Syllabus


Future lecture/discussion material is subject to change.

Date Topic Addl. Reading
  Discussion  
8/27 L1. Class Overview and Big Picture (DKW, KL) Slides  
8/28 D1. Overview of MPs and Environment  
8/29 L2. RISC-V ISA: Introduction and Instructions (DKW) Slides APR Ch.1, Ch.5
9/3 L3. RISC-V ISA: Control Flow Instructions, Writing Assembly (DKW) Slides APR Ch.6, Ch.7
9/4 D2. RISC-V ISA  
9/5 L4. RISC-V ISA: RV64, Calling Conventions, CSRs, Structs, I/O (DKW) Slides APR Ch.7, Ch.8
9/10 L5. Computer Systems Overview, Memory, I/O, Interrupts and Exceptions (KL)  
9/11 D3. MP1  
9/12 L6. Interrupt Control and Handling (KL)  
9/17 L7. Synchronization Interface, Synchronization Hazards (KL)  
9/18 D4. MP1  
9/19 L8. Shared Resources, Critical Sections, Examples (KL)  
9/24 L9. Multiprocessors and Locks, Conservative Synchronization Design (KL)  
9/25 D5. MP2  
9/26 L10. Platform-Level Interrupt Controller (DKW)  
10/1 L11. Interrupt Support in Linux: Data Structures, Initialization and Assembly Linkage (DKW)  
10/2 D6. TBD  
10/3 MIDTERM EXAM 1 (NO LECTURE)  
10/8 L13. Interrupt Support in Linux: Invocation; Summary of Interrupt Support (DKW)  
10/9 D7. MP2  
10/10 L14. Virtual Memory: Rationale, Segmentation (KL)  
10/15 L15A. Virtual Memory: Paging; First Meeting of MP3 Groups (KL)  
10/16 D8. MP3 Overview  
10/17 L15B. Virtual Memory: Paging Cont. (KL)  
10/22 L16. Filesystem: Philosophy, ext2 as Example (DKW)  
10/23 D9. MP3  
10/24 L17. Programs to Processes: Context Switch (KL)  
10/29 L18. Programs to Processes: Linux Process Data Structures; Scheduling (KL)  
10/30 D10. MP3  
10/31 L19. Scheduling (KL)  
11/5 L20. Memory Allocation (KL)  
11/6 D11. MP3  
11/7 MIDTERM EXAM 2 (NO LECTURE)  
11/12 L21. Memory Management (KL)  
11/13 D12. Post-Exam Discussion  
11/14 L22. Signals: User-level Analogue of Interrupts, Controlling Behavior (KL)  
11/19 L23. Block and Character Devices; Device Drivers (DKW)  
11/20 D13. MP3  
11/21 L24. Driver Development Process and Detailed Example (DKW)  
12/3 L25. Detailed Example of Driver Development, Continued (DKW)  
12/4 D14. MP3  
12/5 L26. Driver Development Cont.; Review Session for the Final Exam  
12/10 No Lecture, MP3 Demos  
TBD FINAL EXAM: 0:00 - 0:00 X.M.  
APR
An Introduction to Assembly Programming with RISC-V
OAA
RISC-V Open Architecture Atlas
LDD
Linux Device Drivers (Corbet, Rubini, Kroah-Hartman)