George Mason University

School of Information Technology and Engineering

Computer Science Department

Spring 2004: CS571, Section 001: Operating Systems

UNDER CONSTRUCTION
[ this frame last updated: April 28, 2004 ]

Meets: Mondays, 7:20PM-10:00PM, Room ST1-122
First Class: Monday, January 26
Spring Recess: March 7-14
No Class Meeting: Monday, March 15 (Dr. Foxwell on travel)
Last Class: Monday, May 3
Final Exam/Project: May 10

Instructor: Harry J. Foxwell, Ph.D., 571-203-6704, hfoxwell@cs.gmu.edu
Course Web Page: http://cs.gmu.edu/~hfoxwell
Office Hours: TBD

TA: Youn-Hee Kim, ykim9@gmu.edu (for appointments, etc), ykim9@cs2.gmu.edu (for homework, programs, etc)
TA Office Hours: ST-2 room 422A, TUE 12:00pm-2:00pm and WED 4:30pm-6:30pm

Textbook: Operating System Concepts with Java, Sixth Edition, Silberschatz, Galvin, and Gagne, John Wiley & Sons, Inc., ©2004, ISBN: 0-471-48905-0,
Textbook Web Site

Announcements:
  1. In the event of inclement weather that may cause a class delay or closing, please call 703-993-1000, listen to your local radio/TV news, or check the main GMU web site.
  2. If you will miss a class for some reason, please notify Dr. Foxwell via phone or email.
  3. Monday, January 26, 2004...UNIVERSITY CLOSED DUE TO SNOW
  4. Monday, March 8, 2004...NO CLASS MEETING...SPRING BREAK>
  5. Monday, March 22, 2004...midterm exam, projects and papers due
  6. CS Study Group support

Course Description:

From Catalog: CS571: Operating Systems (3:3:0). Prerequisites: CS 310 and 365. Models of operating systems. Major functions including processes, memory management, I/O, interprocess communication, files, directories, shells, distributed systems, performance, and user interface.

We will learn about and discuss core operating system concepts, with some emphasis on observing/measuring OS behaviors under stress or resource exhaustion.  We will also explore contemporary issues/trends in OS development.  Readings will include textbook chapters and published research papers; course content will generally focus on UNIX-related operating systems (Solaris, Linux, OS X).  Assignments will include written reports, brief student presentations, and programming projects.

Topic Schedule (some topics may span more than one class session):
  1. Chapter 4: Processes
  2. Chapter 5: Threads
  3. Chapter 6: CPU Scheduling
  4. Chapter 7: Process Synchronization
  5. Chapter 8: Deadlocks
  6. Chapter 9/10: Memory Management and Virtual Memory
  7. Chapters 11-14: File Systems and I/O
  8. Chapters 15-17: Distributed Systems
  9. Performance Modeling
Class meets from 7:20pm to 10:00pm; we will start on time, so please don't be late.  Generally, we will break the class into two segments, with a short break at approximately 8:40pm.  The first class segment will usually focus on core curriculum topics; the second segment will usually focus on contemporary OS issues, OS observation and measurement techniques, and on student interaction and discussion/presentation of assignments.

Reading Assignments (all students):
  1. Read and adhere to the Academic Policies and Honor Code
  2. Read and adhere to the Responsible Use of Computing policy
  3. Textbook:
    1. Chapters 1,2,3, 22 (complete before Feb 2)
    2. Chapters 20, 21 (complete before Feb 16)
    3. Appendix E (complete before Feb 16)
    4. Appendix D (complete before Mar 22)
    5. ...additional Chapter assignments TBD
Writing Assignments :
  1. Short research papers(4-5 pages)
  2. Detailed/longer research papers
Research Paper Topics (Single OS Instance)

Research Paper Topics (Distributed Computing)

Project Assignments (all students):
  1. mid-semester project (required)
  2. final project (project OR long research paper OR final exam)
Written assignments should be submitted electronically, not later than the specified due date, via email attachment.  Please use PDF (prefered), PostScript, HTML, or StarOffice/OpenOffice format; Microsoft formats are okay, but then I'll have to convert them.

Grading:

Subjective: assignments and participation:
    A: consistently above and beyond course/assignment requirements
    B: meets and occasionally exceeds course/assignment requirements
    C: minimally meets course/assignment requirements
    F: fails to meet minimal course/assignment requirements

Objective: (see also Graduate Policies for other grade categories)
    A : 94-100%
    A-: 88-93%
    B+: 83-87%
    B : 78-82%
    C : 65-77%
    F : 0-64%

Other Resources:

CS571-002
, taught by Dr. Hakan Aydin
CS Department listing of past courses and syllabi

A Sysadmin's Unixersal Translator (ROSETTA STONE)
The table of equivalents/replacements/analogs of Windows software in Linux
Linux Trace Toolkit
Fast Kernel Tracing
DTrace
Inside Microsoft Windows 2000, Third Edition: Chapter 6: Processes, Threads, and Jobs
Tools for Windows
Windows Services for UNIX
Unix Timeline