CS471: Operating Systems

This page last updated: 21:52 19 May 2003

Where & When: Monday to Thursday, 09:30 to 11:35, Robinson Hall B208
Instructor: Charles Snow, Adjunct Professor
Office Hours: Mon - Thu, 11:50 to 12:30, room across from main Department office, 4th floor ST2.
Email: csnow@cs.gmu.edu
Pre-requisites:
Description: This course examines the operating system concepts that make a collection of electro-mechanical parts a useful computing resource for one or more users. It looks at resource creation and management (cpu, storage, networks) and security measures used to protect the resources. The course also looks at the users of the resources (processes, threads), their interaction (intended and unintended) with the resources and with each other.
Texts: Only one book is required. Other books (by Tanenbaum, Stallings) are shown as useful references.
Required: Silbershatz, Galvin and Gagné, Applied Operating System Concepts, 1st Ed., John Wiley and Sons. ISBN: 0-471-26314-1
(bookstore may have “Windows XP Update” edition)
Tanenbaum, Modern Operating Systems, 2nd edition, Prentice Hall. ISBN 0-13-031358-0

Stallings, Operating Systems, 4th edition, Prentics Hall. ISBN 0-13-031999-6


Look for these books in the GMU Bookstore.
Grading: The final grade for this course is made up from:
  1. 30% Midterm,
  2. 30% Assignments,
  3. 40% Final Exam

Course work is submitted electronically using the department's upload system. This system enforces deadlines on submissions. Generally, an assignment is due by the end (23:59:59 eastern) of the day on which it is due. Each assignment will specify what you are to hand in, hence upload. Late work is subject to a penalty that begins at 10%, and doubles for each class the work is late. No assignment or project work will be accepted for points after a solution to that assignment or project has been posted.

Missed exams must be arranged with the instructor before the exam date.

While students are encouraged to discuss solutions to homework and project problems, each student must submit their own, original, work. Students are expected to abide by both the George Mason University Honor System and Code (which contains a definition of plagiarism, amongst other things). and the Computer Science Department Honor Code Policy for Programming Projects. Further academic policy information is available here.

Note that we reserve the right to submit student work for automated testing to assure the submission's originality.

No student who fails the final exam will receive a grade higher than C.

Syllabus: Topics covered will include:
  • basic machine operation: components, instruction execution, traps, interrupts, privilege level
  • basic OS designs: goals and approaches in different designs
  • processes: basic consumer, threads, IPC, exceptions, concurrency, distributed, scheduling
  • memory and memory management: maps, overlays, segments, pages, virtual memory, distributed systems
  • disks and file systems: media/device characteristics, files, file system organizations, performance
  • networks: goals, behaviour, and implementation
  • security: threats, weaknesses, countermeasures

Other Notes:
  • Course notices and assignments will be provided via email and/or on the course web site http://cs.gmu.edu/~csnow/cs471/2003C.
  • Students are responsible for ensuring that the instructor has a valid email address at which the student can be reached. Students assume all responsibility for the security of their email, and for checking their email in a timely fashion.
  • Course material (e.g., pdf versions of class slides, supplementary material, homework solutions) will be available on the course web site.