Jordan University of Science & Technology Faculty of Computer & Information Technology Department of Computer Science Year: 2015 - 2016 Semester: Fall Course Information Course Title Principles of Modern Operating Systems Course Number CS 375 Prerequisites CS 284 Algorithms Course Website Instructor http://www.just.edu.jo/~masadeh/ Dr. Muneer Masadeh Office Location Office Phone PH 4_L0 02-720-1000 Ext. 23403 Sun, Tue, Thu, 1:15 – 2:15 or by Appointment Office Hours E-mail masadeh@just.edu.jo Text Book Title Operating System Concepts Author(s) Abraham Silberschatz & Peter Galvin Publisher Addison-Wesley Year Edition References 2015 9th W. S. Davis and T. M. Rajkumar, Operating Systems A Systematic View, 5 th Edition, Addison Wesley, 2001. S. Tanenbaum, Modern Operating Systems, 3nd Edition, Prentice Hall, 2007. Gary Nutt, Kernel Projects for Linux, Addison Wesley, 2000. H.M. Deitel, An Introduction to Operating Systems, 3th Edition, Addison-Wesley, Reading, MA 2007 Steven V. Earhart (Editor), UNIX Programmer's Manual, Holt, Rinehart, and Winston, New York, NY 1986. Assessment Policy Assessment Type Expected Due Date Weight First Exam TBA 25% Second Exam TBA 25% Final Exam TBA TBA 40% Activities (Quizzes and Lab) 10% The Goal The goal of this course is to present the basic concepts involved in constructing computer operating systems. Course Objectives No. Objective Weights 1 To explain what operating systems are, what they do, and how they are evolved, designed, and constructed. 10% 2 To understand the process concept and concurrency as the heart of modern operating systems. 15% 3 To compare and contrast the common CPU scheduling algorithms used for both preemptive and non-preemptive scheduling of tasks in operating systems, such as priority, performance comparison, and fair-share schemes. 15% 4 To understand the concept of process synchronization and to explain the concept of algorithms used to prevent, avoid, and detect deadlocks. 15% 5 To explain the concept of memory management and how it is realized in hardware and software. 15% 6 To explain the concept of virtual memory. 15% 7 To explain, compare and contrast the common disk scheduling algorithms. 10% 8 To compare and contrast different interconnection network topologies 5% Learning Outcomes: Upon successful completion of this course, students should Related Objective The expected achieved outcome Chapters 1 Know basic terms associated with operating systems, such as Short-Term Scheduler, Long-Term Scheduler, Multiprogramming, Multiprocessors, etc. and know the structure of the operating system. 1, 2, 3 2 Know the processes’ states and state diagrams. 4 3 Know how to design several CPU scheduling and identify their performance. 6 4 Know how to synchronize processes using semaphores and know how to solve deadlocks using different methods. 7, 8 5 Know different schemes of memory management such as paging, segmentation, and segmentation with paging, and identify their performance. 9 6 Know how to design different Page-Replacement algorithms and identify their performance. 10 7 Know how to design different Disk scheduling algorithms and identify their performance. 14 8 Know the advantages and disadvantages of different interconnection network topologies. 15 Teaching & Learning Methods Class lectures, lecture notes, and quizzes are designed to achieve the course objectives. You should read the assigned chapters before class, and participate in class and do whatever it takes for you to grasp this material. Also, ask any question related to O.S. You are responsible for all material covered in the class. Please communicate with me regarding any concerns or issues related to OS by either in class, phone, or email. The web page is a primary communication vehicle. Lecture notes and syllabus are available on the web. Course Content Number of Weeks (1 Week: 3 one-hour lectures) Topics Chapter in Text Introduction What is an Operating System? Simple Batch Systems; Multiprogramming Batched Systems; Time-Sharing Systems; Personal-Computer Systems; Parallel Systems; 1 Distributed Systems; and Real-Time Systems. Computer-System Structures Computer-System Operation; Storage Structure; Storage Hierarchy; Hardware Protection; and General System Architecture. 2 Operating-Systems Structures System Components; Operating-System Services; System Calls; System Programs; Systems Structure; and Virtual Machines. 3 Processes Process Concept; Process Scheduling; Operation on Processes; Cooperating Processes; Inter-Process Communication (IPC); and Buffering. 4 CPU Scheduling Basic Concepts; Scheduling Criteria; and Scheduling Algorithms. 6 Process Synchronization Mutual Exclusion; Critical Sections; Semaphores; and The Dining-Philosophers Problem. 7 (2 Weeks: 6 one-hour lectures) Deadlocks System Model; Deadlock Characterization; Methods for Handling Deadlocks; Deadlock Prevention; Deadlock Avoidance; Deadlock Detection; and Recovery from Deadlock. 8 (2 Weeks: 6 one-hour lectures) Memory Management Background; Logical versus Physical Address Space; Swapping; Contiguous Allocation; Paging; Segmentation; and Segmentation with Paging. 9 (2 Weeks: 6 one-hour lectures) Virtual Memory Background; Demand Paging; Performance of Demand Paging; Page Replacement; and Page-Replacement Algorithms. 10 (1 Week: 3 one-hour lectures) Mass-Storage Structure Disk Structure; Disk Scheduling; Disk Management; Tertiary Storage Devices; and Disk Speed, Reliability, and Cost. 14 (1 Week: 3 one-hour lectures) Distributed System Structures Topology and Network Types. 15 (1 Week: 3 one-hour lectures) (2 Weeks: 6 one-hour lectures) (2 Weeks: 6 one-hour lectures) (1 Week: 3 one-hour lectures) (1 Week: 3 one-hour lectures) Additional Notes Quizzes No make up quizzes. Usually quizzes are determined. A minimum 4 quizzes are given. Each Quiz is out of 10. If five quizzes or more are given then the lowest quiz’s grade is dropped. The format for the exams is generally (but NOT always) as follows: General Definitions, Multiple-Choice, True/False, Analyze a Problem, Short Essay Questions, etc. Exams Makeup Exams Drop Date Cheating Makeup exam should not be given unless there is a valid excuse. Last day to drop the course is on the current semester. Cheating or copying on exam or quiz is an illegal and unethical activity. Standard JUST policy will be applied. All graded assignments must be your own work (your own words). Attendance Graded Exams Excellent attendance is expected. JUST policy requires the faculty member to assign ZERO grade (35) if a student misses 10% of the classes that are not excused. Sign-in sheets will be circulated. If you miss class, it is your responsibility to find out about any announcements or assignments you may have missed. Workload before the twelve (12th) week of Average work-load student should expect to spend 6 hours per week. Instructor should return exam papers graded to students not after the week after the exam date. Participation in and contribution to class discussions will affect your final grade positively. Raise your hand if you have any question. Making any kind of disruption and (side talks) in the class will affect you negatively. Participation