Course Lecture Plan


Permission is granted to copy and distribute this material for educational purposes only, provided that the complete bibliographic citation and following credit line is included: "Copyright 2013 UCB." Permission is granted to alter and distribute this material provided that the following credit line is included: "Adapted from (complete bibliographic citation). Copyright 2013 UCB. Note that some slides are also 2009 Silberschatz as noted."

This material may not be copied or distributed for commercial purposes without express written permission of the copyright holder.




Date Lecture Lecture Topic (Tentative Schedule)
Notes Reading (S&G 9th edition/8th edition/7th edition)
Assignment

We
1/22

1
Introduction, overview [ppt,pdf]
S&G 9th/8th/7th Ch 1

Mo
1/27
2
Abstractions: Services, Structures, Processes, and Threads [ppt,pdf]
[extra]
S&G 9th/8th/7th Ch 2-4
Edsger W. Dijkstra, 'The structure of the “THE”-multiprogramming system' Communications of the ACM, Volume 11 ,  Issue 5  (May 1968)


We
1/29
3
Concurrency and Thread Dispatching
[ppt,pdf]
[extra]
S&G 9th/8th/7th Ch 6
John R. Garman, "The Bug Heard 'round the World," ACM SIGSOFT Software Engineering Notes, Vol 6 No 5, Oct 1981
Nancy Leveson, "Medical Devices: The Therac-25", Safeware: System Safety and Computers, Adison-Wesley, 1995
 
Mo
2/3
4
Synchronization: Cooperating Threads, Mutual Exclusion [ppt,pdf]
[extra]
S&G 9th: Ch 5.1-5.5
S&G: 8th/7th:  Ch 6.1-6.5
S&G 7th: Ch 6.1-6.4
Andrew D. Birrell, "An Introduction to Programming with Threads," DIGITAL SRC Research Report 35, Jan 1989

Tu
2/4

Project 1 starts

We
2/5
5
Semaphores, Condition Variables, Readers/Writers [ppt,pdf]
[extra]
S&G 9th: Ch 5.6-5.11
S&G: 8th/7th:  Ch 6.6-6.10
S&G 7th: Ch 6.5-6.10

Mo
2/10
6
Software Engineering: Working in Teams
[ppt,pdf]
[extra
Waterfall Model
Software Processes at NASA
Rapid Application Development

We
2/12
7
Language Support for Synchronization, Deadlock [ppt,pdf]
S&G 9th/8th/7th:  Ch 7
Recommended: S. Lu. et al. "Learning from Mistakes— A Comprehensive Study on Real World Concurrency Bug Characteristics" ASPLOS 2008.

Th
2/13

Project 1 initial design due (11:59pm)

Mo
2/17
Washington's Birthday Holiday (no classes)
We
2/19
8
 CPU Scheduling
[ppt,pdf]
[extra]
S&G 9th: Ch 4
S&G 8th/7th: Ch 5

Mo
2/24
9
Protection: Address Spaces, Address Translation [ppt,pdf]
[extra
S&G 9th/8th/7th: Ch 8  
Tu 2/25
Project 1 code due (11:59pm)
We
2/26
10
Address Translation, Caching, and TLBs [ppt,pdf]
[extra
S&G 9th/8th/7th: Ch 9
H Levy and P. Lipman, "Virtual Memory Management in the VAX/VMS Operating Systems," Computing Surveys, 4(3) September 1972, pp. 149-167

Project 1 group evals, final design docs due (11:59pm)
Mo
3/3
11
Page Allocation and Replacement [ppt,pdf]
[extra


We
3/5
12
Kernel/User and I/O
[ppt,pdf]

S&G 9th/8th/7th: (review Ch 1.5, 3.3-3.4), Ch 13
Recommended: Corbet et al., Linux Device Drivers, Third Edition
 
Th 3/6
Project 2 initial design due (11:59pm)
Mo
3/10
13
Disks/SSDs,  Filesystems
[ppt,pdf]

S&G 9th/8th/7th: Ch 10, 11, 12

We
3/12

MIDTERM I 4-5:30pm in 245 Li Ka Shing and 105 Stanley

Mo
3/17
14
Filesystems (cont'd) [ppt,pdf]

M. McKusick, W. Joy, S. Leffler, and R. Fabry:
"A Fast File System for UNIX", ACM Transactions on Computer Systems, Vol 2, No 3, August 1984, Pages 181-197

We
3/19
15
Key-Value Store, Networking, Protocols [ppt,pdf]

The Design Philosophy of the DARPA Internet Protocols
End-to-end Arguments in System Design
S&G 9th: Ch 17
S&G 8th/7th: Ch 16, 17, 18

Th 3/20
Project 2 code due (11:59pm)
Fr 3/21
Project 2 group evals, final design docs due (11:59pm)
Mo 3/24
Spring Recess (no classes)
We 3/26
Spring Recess (no classes)
Mo
3/31
16
Layering [ppt,pdf]



We
4/2
17
Flow control, reliability, TCP [ppt,pdf]



Mo
4/7
18
Transactions [ppt,pdf]



Tu
4/8
 Project 3 initial design due (11:59pm)
We
4/9
19
Transactions scheduling, 2PL and 2PC [ppt,pdf]



Mo
4/14
20
Fault-Tolerant Computing
[ppt,pdf]

Jim Gray, "Why Do Computers Stop and What Can Be Done About It?", Tandem Tech Report TR-85.7, June 1985.

We 4/16 21
Protection & Security: Authentication, Cryptographic Mechanisms
[ppt,pdf]

S&G 9th/8th/7th: Ch 14, 15

Th 4/17

Project 3 code due (11:59pm)

Fr 4/18

Project 3 group evals, final design docs due (11:59pm)

Mo
4/21
22
Protection & Security (cont'd): Buffer overflow attacks, DoS attacks
[ppt,pdf]


 
We
4/23
23
RPC and Distributed Filesystems [ppt,pdf]
 
Mo 4/28
MIDTERM II 4-5:30pm in 245 Li Ka Shing and 100 GPB
Tu 4/29
Project 4 initial design due (11:59pm)
We
4/30
24
Capstone: Cloud Computing
[ppt,pdf]
 

Th 5/8

Project 4 code due (11:59pm)

Fr 5/9

Project 4 group evals, final design docs due (11:59pm)