University at AlbanyDepartment of Computer Science

CSI 400 Operating Systems    Fall 2004 Web Site

 

Fall 2003

Fall 2002

What is New:  Click here for current lecture links.

FINAL EXAM DATE is Thursday, Dec. 16, 1:00-3:00PM-- this is an already publicized CORRECTION from Albany's "2004 Schedule of Classes" on paper.


 
Instructor: Prof. S. Chaiken 
LI-67A, 442-4282 
sdc@cs.albany.edu
M 11:30AM-12:30PM;
W, F: 11:30AM-1:00PM
and by appointment or if not busy
Teaching Assistant: Jing Qian 
LI-96P, 442-4285 
jq7581@albany.edu
T, Th 12:00-2:30PM 
and by appointment

Textbooks:

  1. Operating System Concepts with Java, 6th edition by Silberschatz, Galvin and Gagne, publisher: Wiley, 2004
  2. Understanding the Linux Kernel, 2nd edition by Bovet and Cesati, publisher: O'Reilly
  3. Unix System Programming by Haviland, publisher: Addison-Wesley
  4. (optional, highly recommended for informative and authoritative answers on C and its standard libraries): C - A Reference Manual, by Harbison and Steele, publisher: Prentice-Hall
Other Resources:
  1. Edsger W. Dijkstra's Archive (http://www.cs.utexas.edu/users/EWD/)
  2. Slides by Silberschatz to support OSP (http://cs-www.cs.yale.edu/homes/avi/os-book/osj/slide-dir/index.html)
  3. Online Single Unix Specification
    1. from  The Open Group
  4. My Web page of tutorial resources for separtate compilations and Make
  5.  Bruce Eckel's online books, including Thinking in Java (http://www.mindview.net/Books Includes a pretty good explanation and tutorial about threads in general and in Java. (Thanks to Kathleen for the pointer).
  6. Pthreads programming:
  7.  Lecture notes on Concurrency from MIT: (http://web.mit.edu/6.826/www/notes/
  8. Raphael Finkel's "An Operating Systems Vade Mecum" book (out of print) See: Chapter 4 (Resource Deadlock)
  9. comp.os.research FAQ
  10.  How to browse Linux Kernel Sources--various ways. 
  11. Johnson and Troan, Linux Application Development Addison-Wesley (excellent introductory supplemental text on network/sockets as well as general Unix programming (in terms of Linux specifics).
  12. Mike Jones' web site about the classic priority inversion problem that caused the 1997 Mars Pathfinder lander to repeatedly reboot. This contains the original report by Jones on a conference talk given by David Wilner, which is a good place to begin reading. (Thank you Justin Lintz for bringing Jones' report to our attention.)




Homework and Project Assignments Collected:
Course Material in Chronological Order: