Description: This course covers the principles of operating systems theory and practice. Fundamental concepts such as processes, synchronization, scheduling, memory management, file systems, and distributed systems will be presented.
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. In addition, the students should be fluent in all aspects of the C programming language in order to complete the course work, which includes substantial programming projects.
Meeting Times and Location: Wednesday 4:30 – 7:10 PM, Innovation Hall Rm. 134.
Required Textbook: Operating System Concepts by Silberschatz, Galvin and Gagne (9th Edition, John Wiley & Sons, 2012, ISBN 978-1-118-06333-0).
Operating Systems - Principles and Practice (2nd Edition, Recursive Books, 2014, ISBN 978-0-9856735-2-9) by Anderson and Dahlin
Modern Operating Systems (4th Edition, Pearson 2015, ISBN: 0-13-359162-X) by A. S. Tanenbaum
Distributed Systems: Concept and Design (5th Edition, Addison-Wesley, 2012, ISBN 978013214301-1), by Coulouris, Dollimore and Kindberg.
Instructor Office Hours: Wednesday, 1:30 – 2:30 PM, and by appointment (Office: Engineering Building, Room 5308)
Graduate Teaching Assistant (GTA): TBA
Course Home Page: Throughout the term, all course material (announcements, slides, handouts, etc.) will be available on the GMU Blackboard system
Grading: Grading components will be as follows.
The students must achieve a total score of at least 85 (out of 100) to be considered for an A. No early midterm/final exams will be given and make-up exams are strongly discouraged. A student should present an official and verifiable excuse to miss a midterm/final exam (such as a doctor's note). A total score less than 50 or a final exam score less than 40 will result in F.
All exams are closed book. The final exam will be cumulative; that is, it will include all topics discussed during the term. The students are responsible for keeping back-ups of their work while they are working on an assignment.
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. Collaboration will be allowed only for the group assignments, within each group. We reserve the right to use automated tools such as MOSS to detect plagiarism. Violations of the Honor Code will result in an F. Those violations will be also reported to the GMU Honor Council.
Computer Accounts: All students should have accounts on the VSE Unix cluster (aka zeus.vse.gmu.edu). Instructions and related links can be found here.
Classroom Behavior: During the lectures, the students should avoid behavior that may distract others, including chatting, sleeping, playing games, surfing the web. All electronic communication devices (including laptops, PDAs, cell phones) should be either turned off or silenced during the lectures. The use of electronic devices (including laptops and tablet computers) is allowed only for course-related purposes, such as note taking.
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.