CS 4210 Advanced Operating
Systems
Spring 2001, MWF 1:05-1:55PM, CCB 101
Basic Information:
-
Instructor: Yannis Smaragdakis,
CCB 215, 404-385 1491
yannis@cc.gatech.edu
Office Hours: MF 2:00-3:00 or by appointment
-
Teaching Assistant: Darin Kohles,
CCB 153,
dkohles@cc.gatech.edu
Office Hours: TW 2-3pm
-
Suggested Textbooks:
Operating Systems
Concepts Silberschatz and Galvin, Fifth Edition, Addison Wesley
Multithreaded
Programming with Pthreads Lewis and Berg, Prentice Hall
Pthreads Programming Nichols, Buttlar, Farrell, O'Reilly
Distributed
Operating Systems Tanenbaum, Prentice Hall
-
Syllabus
-
Class
Photos
Lectures (updated as the semester progresses):
-
Fri Jan 5: Silberschatz
and Galvin Chapter 4 (review)
-
Mon Jan 8: Birrell
"An Introduction to Programming with Threads"
-
Wed Jan 10: Birrell, continued
-
Fri Jan 12: Birrell, continued
-
Wed Jan 17: Thread Programming Advice and Patterns (Lewis&Berg Ch.
13, Nichols, et al. Ch. 2). HW 1 given out.
-
Fri Jan 19: Concurrency practice problem
-
Wed Jan 24: Implementation of Concurrency and Synchronization (Lewis&Berg
Ch. 5, 6)
-
Fri Jan 26: Introduction to Pthreads
-
Mon Jan 29: Kernel Thread Implementation (Eykholt
et al. paper on Multithreading the SunOS kernel)
-
Wed Jan 31: Thread Library Implementation (Implementing Lightweight Threads
paper by Stein and Shah). Project
1 handed out.
-
Fri Feb 2 (2 lectures): Implementing Lightweight Threads, continued,
HW1 discussion
-
Mon Feb 5: Signalling discussion, "First-Class
User-Level Threads", by Marsh et al.
-
Wed Feb 7: Advanced Synchronization Constructs: Monitors and Serializers
-
Fri Feb 9: Exam 1
-
Mon Feb 12: Exam discussion
-
Wed Feb 14: Path Expressions, SMP architecture introduction
-
Fri Feb 16: Path Expressions complex example, Performance of Spinlock Alternatives
for SMPs (Anderson's paper)
-
Mon Feb 19: Performance of Spinlocks continued
-
Wed Feb 21: Webserver Architecture ("Flash:
an Efficient and Portable Web Server", by Pai et al). See also the
talk
slides.
-
Fri Feb 23: User-Level Inter-Process Communication (Bershad et al paper)
-
Mon Feb 26: Review, HW2 discussion
-
Wed Feb 28: Micro-kernels (Liedtke's "On
micro-kernel construction")
-
Fri Mar 2: Fast IPC ("The
Spring Nucleus, a Micro-kernel for Objects"). Project
2 given out
-
Mon Mar 12: "A
Note on Distributed Computing" by Waldo, Wyant, Wollrath, Kendall
-
Wed Mar 14: Project, HW3 discussion
-
Fri Mar 16: Distributed File Systems (Tanenbaum Ch. 5, Silberschatz and
Galvin Ch. 17)
-
Mon Mar 19: Distributed File Systems (cont'd)
-
Wed Mar 21: Exam 2
-
Fri Mar 23: Exam 2 discussion
-
Mon Mar 26: Distributed File Systems case studies. The Sprite
file system (recommended paper: Caching
in the Sprite Distributed File System by Nelson et al.)
-
Wed Mar 28: RPC mechanisms
-
Fri Mar 30: RPC mechanisms cont'd
-
Mon Apr 2: Sun RPC
-
Wed Apr 4: Distributed Shared Memory introduction, Project
3 given out
-
Fri Apr 6: Distributed Shared Memory consistency models
-
Mon Apr 9: Distributed Shared Memory consistency models (cont'd)
-
Wed Apr 11: Distributed Shared Memory consistency models and implementation
-
Fri Apr 13: DSM wrap up, discussion of examples from HW4
-
Mon Apr 16: Senior presentations: Juergen Pabel and Eric Anderson
-
Wed Apr 18: Senior presentations: Jessica Meremonte and Melody Durham
Pointers to Technical Information:
-
JPEG manipulation:
-
www.ijg.org
-
Source
code library for JPEG manipulation (follow installation instructions
to compile it)
-
Client
program using the library to create low-quality JPEG images from regular
JPEGs. Untar together with the library and follow the instructions in README.lowres
-
HTTP, Web Servers, and more:
-
Pthreads Resources:
Additional Information: