Description: This course covers the principles of operating systems theory and practice. Fundamental concepts such as processes, synchronization, scheduling and memory management will be presented. Another emphasis will be on the principles of distributed operating systems.
Prerequisites: CS 310 (Data Structures), CS 367 (Computer Systems and Programming), and CS 465 (Computer Architecture), or equivalent. A solid background in Computer Architecture (including Assembly Language) is required. The course material will include material that requires the knowledge of C programming language. In order to work on the substantial programming projects of the course, the students must have working knowledge of C or Java programming languages.
Meeting Time and Locations:
Wednesday 4:30 – 7:10 PM
Required Textbook: "Operating System Concepts", by Silberschatz, Galvin and Gagne (8th Edition, John Wiley & Sons 2008, ISBN 978-0-470-12872-5).
"Modern Operating Systems" (3rd edition, Prentice Hall 2008, ISBN: 0-13-600663-9) by A. S. Tanenbaum, is another good book on the principles of operating systems.
As additional reference on distributed systems, the following book can be recommended: "Distributed Systems: Concept and Design" (4th Edition, Addison-Wesley 2005, ISBN 0321263545), by Coulouris, Dollimore and Kindberg.
Office Hours: Monday 4:30 – 5:30 PM; Wednesday 7:20 PM – 8:20 PM; and by appointment (Office: Engineering Building, Room 5308)
Tentative Exam Dates:
Course Web Page: http://cs.gmu.edu/~aydin/cs571
Teaching Assistant: Fengwei
TA Office Hours: Wednesday 3-4 PM; Friday 4-5 PM; and by appointment
The students must achieve a total score of at least 85 (out
of 100) to be considered for an A. No early exams will be given and make-up
exams are strongly discouraged. A
student should present an official and verifiable excuse to miss an exam (such
as a doctor's note). Each project
will have a soft copy and hard copy component that must be submitted by the
date specified on the project handouts. All students will be required to give the
demo of the last programming project in person, in the instructor’s
All students must abide by the GMU Honor Code and CS Department's Honor Code and Academic Integrity Policies during the semester. The students are supposed to work individually on the assignments/projects. Collaboration will be allowed only for the group projects, within each group. We reserve the right to use automated tools such as MOSS to detect plagiarism. Violations of the Honor Code or a total score of 49 (or less) will result in an F.
Computer Accounts: All students should have accounts on the central Mason Unix system mason.gmu.edu and on IT&E Unix cluster zeus.ite.gmu.edu (Instructions and related links are here). Students can work in IT&E computer labs for programming projects during the specified hours.
Disability Statement: If you have a learning or physical difference that may affect your academic work, you will need to furnish appropriate documentation to GMU Disability Resource Center. If you qualify for accommodation, the DRC staff will give you a form detailing appropriate accommodations for your instructor. If you have such a condition, you must talk to the instructor during the first week of the term about the issue.