TWiki> CS385fall14 Web>WebHome (2014-09-26, Main.jakob)EditAttach

CS385 - Operating Systems Concepts and Design

This is the new 3 credit our version of CS385, which has CS361 Computer Systems as a prerequisite. To brush up on your systems programming skills, please see the recorded CS361 lectures from fall 2013.

The class discussion forum is hosted on Piazza. This will be used for all class communication aside from this website and the classroom.

Lecture Notes and Reading Assignments

# Lecture topic Read this before lectureSorted ascending Date
21 file systems cont. and hw8 * 11/6
22 hw8 take two * 11/11
13 introduction to threads (this will not be covered in the midterm) 10/7
1 Introduction to Operating Systems - 8/26
15 midterm post-mortem, beginning concurrency - 10/16
14 midterm review all of the above 10/9
4 GDB, initialization, and starting protected mode. entry.S, main.c - and follow the first function call (kinit1()) all the way down to see what it does. 9/4
2 Using Git, and the boot process Git book Chapters 2 and 3, bootasm.S, bootmain.c, and this other boot sector example 8/28
5 OS initialization continued main() and single-core subroutines, trap.c, xv6 commentary chapter 1. 9/9
x (Tim Merrifield Guest Lecture) Advanced OS-level Synchronization n/a 11/13
-- midterm exam   10/14
17 spinlock, queue lock, adaptive   10/25
18 hw6/7 discussion, continuing mutual exclusion   10/28
19 understanding caches, coherency protocols and performance   10/30
23 block-level operations and persistence in file systems   11/18
25 advanced storage concepts: RAID, ZFS, b-trees and btrfs   11/20
26 alternative OS designs, and virtualization   12/2
27 wrap up and review for final   12/4
3 BIOS services, real mode programming OSPP 2--2.3, Int 10 functions take a quick look at the list, read about function "AH=0eh" in detail. 9/2
9 process vs. kernel abstractions, and syscalls OSPP 2.1--2.3. proc.h, userinit(), fork() and allocproc(). xv6 commentary chapter 2. 9/23
6 Interrupts, and virtual memory OSPP 2.1--2.3. proc.h, xv6 commentary chapter 2. 9/11
10 process scheduling and switching OSPP 2.4. sched(), scheduler(), wait(), wakeup() 9/25
7 Virtual Memory (2nd attempt) OSPP 8.1--8.2 9/16
8 paging and replacement policies OSPP 9.5--9.7 9/18
24 authentication / access control, and hw9 OSPP on access control 11/25
16 mutual exclusion in the kernel OSPP part 2, except: 5.6. xv6 textbook, chapter 4 10/23
20 intro to file systems OSPP Part 4, except Ch 12, NTFS and Copy-on-Write File Systems. xv6 booklet on file systems 11/4
11 process switching continued. From sys_fork() to swtch see prev. lecture, and swtch(). xv6 commentary Ch. 4. OSPP 4.6 (context switch) 9/30
12 sleep and wakeup, plus scheduling algorithms sleep(), wakeup()/wakeup1(), OSPP 7.1 10/2

Additional handy resources

Topic revision: r7 - 2014-09-26 - 14:25:10 - Main.jakob
 
Copyright 2016 The Board of Trustees
of the University of Illinois.webmaster@cs.uic.edu
WISEST
Helping Women Faculty Advance
Funded by NSF