Lecture and lab timetable

This is the schedule of lectures and labs. It is subjected to change when necessary. All laboratories are held in Room 127 of the Owheo building.

Week beginning Lecture topics Lab topics Reading
6 July Lecture 1: Introduction Lab 1: Installation of RPI Linux and system calls The Evolution of the Unix Time-sharing System
The UNIX Time-Sharing System
13 July Lecture 2: Processes Lab 2: The structure of a Linux kernel module Eliminating Receive Livelock in an Interrupt-driven Kernel
20 July Lecture 3: Interrupts Lab 3: Linked list, seeking device and process sleeping Read-Copy Update
Wikipedia article on Read-copy-update
27 July Lecture 4: Character devices Lab 4: Mutex, semaphore and the /proc filesystem Exokernel
5 August Lecture 5: Debugging & concurrency in kernel Lab 5: Memory management Scalable Address Spaces Using RCU Balanced Trees
10 August Lecture 6: Advanced char driver Lab 6: Using ioctl() KeyKOS
KeyKOS Homepage
17 August Lecture 7: Hardware and interrupt handler Lab 7: Catchup lab Revisiting Network I/O APIs: The Netmap Framework
Mid-semester break: August 24th - August 30st
31 August Lecture 8: File system performance and durability Lab 8: Hardware interrupt and tasklet Rethink the Sync!
7 September Lecture 9:Distributed OS Lab 9: Walking through the Assignment 2 Fault tolerance under UNIX
14 September Lecture 10: Virtualization and Security Lab 10: Timer A Comparison of Software and Hardware Techniques for x86 Virtualization
21 September Lecture 11: Multicore Computing Presentation session 1 of Assignment 3 Backtracking Intrusions
28 September Presentation session 2 of Assignment 3 Presentation session 3 of Assignment 3
5 October Presentation session 4 of Assignment 3 Presentation session 5 of Assignment 3
Valid XHTML 1.0 Strict

Page maintained by Zhiyi Huang. Last modified: Friday July 2, 2021