George Mason University
School of Information Technology and Engineering
Department of Computer Science
Spring 2001 CS571-002-36382
Operating Systems
Class Meeting:
Thursdays, 07:20PM-10:00PM Room: KH 7
Syllabus

Professor: Dr. Tan N. Nguyen
Telephone: (703) 993-1530

E-mail: tnguy1@cs.gmu.edu
Office Hours: By appointment
Home Page: http://classweb.gmu.edu/classweb/tnguy1
Class email: cs571-002@gmu.edu

TA:
   Keerthi Mohan (kmohan@gmu.edu)
TA's Office Hour: Mondays, 12-2pm and Fridays, 11AM-1pm
When sending a question to the TA, please prefix the subject with CS571-002. The TA will be in room 365 ST2 .   For more information please go to this website:
http://www.cs.gmu.edu/TAofchours.html

Course Description:
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.  Fundamental concepts include process synchronization and scheduling, interprocess communication, memory management, virtual memory, deadlocks, security and access control, file and disk management, performance analysis, and distributed systems. The impact of computer architecture on operating systems is examined. Topics in distributed operating systems covered include: communication models in distributed systems (client/server, remote procedure calls, and group communication), synchronization issues, processes and threads, scheduling, distributed shared memory, and distributed file systems.  Case studies of operating systems are presented. In addition, the professor will present topics related to "real-life" operating systems such as Windows NT, numerous UNIX flavors, and some practical issues with solutions from his experience in software systems development, data communications, computer networks, and distributed systems integration.

Text Book:
A. Silberschatz, Applied Operating System Concepts, Addison-Wesley, 2000
George Coulouris, Jean Dollimore and Tim Kindberg, Distributed Systems: Concepts and Design, Edition 3, Addison-Wesley, ©Pearson Education 2001

References

Daniel A. Menascé, Sliding through Operating Systems, 1996.
A. Tanenbaum, Modern Operating Systems, Prentice-Hall 1993.
A. Tanenbaum 1995. Distributed Operating Systems. Prentice-Hall.
W. Stallings, Operating Systems: Internals and Design Principles, 3rd edition, Prentice Hall, 1998.
Pham, T. Q., and P. K. Garg. 1996. Multithreaded Programming with Windows NT. Prentice-Hall.
Custer, H. 1993. Inside Windows NT. Microsoft Press.
R. Chow and T. Johnson, Distributed Operating Systems and Algorithms Addison Wesley, 1997.
J. Bacon, Concurrent Systems: Operating Systems, Database and Distributed Systems: an integrated approach, 2nd
edition, Addison Wesley, 1998.

Grading
Grades are based on two in-class exams (a midterm and a final), Hyperlearning Meter on-line Self-Assessments (HLSA) at regular intervals, homework,  and projects. Grades will be numerical on the scale 0-100. Your final numerical grade, G, is computed as follows:
G =  0.20 * Midterm + 0.30 * Projects +  0.20*Homework + 0.30 * Grade_Final_Exam

Grade G  Letter grade
[96,100]  A
[91,96)  A- 
[86,91)  B+ 
[81,86) 
[70,81) 
[0, 70)  F

Lateness:
I will not accept assignments late unless you have pre-arranged a new due date, or if there is an emergency and you let me know as soon as possible after the emergency.