CS 347/CS 333 Operating Systems
Autumn 2018

Schedule

week 1
16/7, 17/7, 19/7
course introduction, abstractions and interface, OS tasks and building blocks
lecture2   lecture3  
week 2
23/7, 24/7, 26/7
the two-state representation, the process abstraction, the pcb, process states, run queues
lecture4   lecture5   lecture6  
week 3
30/7, 31/7, 2/8
3/8
signal, fork and exec, copy-on-write, system calls
lecture7   lecture8   lecture9  
Quiz #1
week 4
6/8, 7/8, 9/8
the first user process, kernel threads, interrupts, system calls
lecture10   lecture11   lecture12  
week 5
13/8, 14/8, 16/8
memory virtualization, address space abstraction, address translation
lecture13   lecture14   lecture15  
week 6
20/8, 21/8, 23/8
memory virtualization, segmentation, paging
lecture16   lecture17   lecture18  
week 9
27/8, 28/8, 30/8
memory virtualization, segmentation, paging, xv6 memory management
lecture19  
Quiz #2  
week 10
3/9, 4/9, 6/9
paging, TLBs, swapping, memory management
lecture20   lecture21   lecture22  
week 11
9/9 to 16/9
midsem week
CS347 exam: 11th Sept. Monday, 11 am.
week 12
17/9, 18/9, 20/9
synchronization, atomicity, spinlocks
lecture23   lecture24   lecture25  
week 13
24/9, 25/9, 27/9
spinlocks, mutexs, condition variables, semaphores, use-cases and examples
lecture26   lecture27   lecture28  
week 14
1/10, 4/10, 5/10
condition variables, mutexes, producer-consumer, readers-write, threads
lecture29   lecture30  
Quiz #3
week 15
8/10, 9/10, 11/10
threads, pthreads, processes redux, the system calls mechanism of xv6
lecture31   lecture32   lecture33  
week 16
15/10, 16/10, 18/10
process management mechanisms of xv6
lecture34   lecture35   lecture36  
week 17
22/10, 23/10, 25/10
scheduling policies, file systems
lecture37   lecture38   lecture39  
week 18
29/10, 30/10, 1/11
file systems
lecture40   lecture41   lecture42  
week 19
5/11
file systems
lecture43