Below is a schedule for this course, which will be updated as the course progresses. Students are thus required to frequently check this webpage for schedule, reading materials, and assignment updates.
Date | Topic | Assignment | Readings |
week 1 09/01 |
( |
Syllabus. link
Textbook, Chapter 1 and 2.
|
|
week 2 09/08 |
Processes and threads ( |
|
Textbook, Chapter 3 and 4.
POSIX Threads Programming. Barney, 2016.
link
|
week 3 09/15 |
IPC ( |
Textbook, Chapter 5 and 6.
An Introduction to Linux IPC. Kerrisk, 2013.
link
(optional) Beej's Guide to Unix IPC. Beej, 2010.
link
(optional) Windows IPC. Pendharkar, 2006.
link
|
|
week 4 09/22 |
Synchronization ( |
The Little Book of Semaphores, Chapter 1.1~3.6, 4.1~4.2. Downey, 2008.
link
(optional) Algorithms for Scalable Synchronization on Shared-memory Multiprocessors. Mellor-Crummey and Scott, 1995.
link
|
|
week 5 09/29 |
Deadlock ( |
Textbook, Chapter 7.
|
|
week 6 10/06 |
CPU scheduling and midterm review ( |
Textbook, Chapter 8.
|
|
week 7 10/13 |
Midterm Exam | ||
week 8 10/20 |
Memory management ( |
|
|
week 9 10/27 |
Address translation ( |
||
11/03 |
Cache ( |
||
11/10 |
Memory management review ( |
||
11/17 |
I/O systems and secondary storage ( |
|
Textbook, Chapter 12.
(optional)
The Design and Implementation of Microdrivers. Ganapathy. ASPLOS, 2008 .
link
|
11/24 |
Thanksgiving Break - No class | ||
12/01 |
File systems ( |
||
12/08 |
File systems security ( |
Linux File Permissions, chmod, & umask. Tutonics. 2012.
link
Dropping Privileges in setuid Programs
link (Section 1.3 in
Secure Programming Cookbook for C and C++).
Viega & Messier, 2003.
(optional)
Fixing Races for Fun and Profit: How to abuse atime. Borisov et al.. Usenix Security, 2005.
link,
Guideline 1,
2,
3
(optional)
Secure Coding Guide. Apple, 2014.
link
|
|
12/15 |
Final Exam |
.