Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Operating Systems CS381 Umar Saif [email protected] The Bureaucracy Not anointed by the Queen I am not a Sir! Call me Umar The Bureaucracy Instructor: Umar Saif TAs: TBA 19, 100 minute lectures Assignments vs. project poll? Why Bother? We’ll not teach you operating systems textbooks We’ll learn to engineer realworld complex systems OS is one such system You’ll leave with an intuitive sense for engineering real systems Modus Operandi System design is as much an art as it is science We are using an internal MIT textbook (6.033 classnotes) from Jerry Saltzer and Frans Kaashoek We’ll refer to a traditional textbook every so often Text Books Silberschatz, Galvin and Gagne, ‘Applied Operating System Concepts’, 1st Edition, 2000, John Wiley & Sons, Inc. ISBN 0-471-36508-4. Principles of Computer System Design, MIT 6.033 Class Notes, Draft Release 4 by Jerome H. Saltzer and M. Frans Kaashoek, Department of EECS, MIT Some handouts will be given to supplement the text. Grading 15% Quizzes 30% Hands-on exercises Midterm Exam Final Exam (Comprehensive) 25% 30% Grading Announced quizzes So that you prepare for them Programming assignments carry the same weight as the finals Engineers learn by kicking the sandbag I am very lenient grader Try and enjoy the course, don’t worry about grades What we’ll learn 1 Operating System Concepts (What is an OS? Why is an OS Needed? Case study of the UNIX time-sharing OS.) 1 Chapter 1 System Engineering (Indirection, Complexity, Modularity, I/O, Storage Structures, Storage Hierarchy, Protection Layers etc.) 2 Chapter 2 Operating System Structures (Clock Management (scheduling), Address-space-management (Memory), Abstraction (System Calls, Virtual Machines) etc.) Chapter 3 What we’ll learn 2 PART 2: PROC ESS MANA GEMEN T Processes (Process as a unit of allocation, Process (thread) Scheduling, process Structures, etc.) Ad dress Spaces (Address Space as a Unit of Protection, Stack, Heap and Text sections, Means of Abstraction, Context -switc h) CPU Scheduling (Batch-mode, Time-sharing, Kernel and User-mo de, Scheduling Policies, Co-routine Scheduling etc.) Process Sync hronization (The Critical Section Problem, Synchronizati on Ha rdware, Semaphores, Classical Problems of Synchronizat ion, Monitors etc.) 1 Chapter 4 Chapter 5 1 Chapter 4 Chapter 9 2 Chapter 6 4 Chapter 7 What we’ll learn 3 Deadlocks (Deadlock Characterization, Methods for Handling Deadlocks, Deadlock Prevention, Avoidance and Detection etc) PART 3: STOR AGE MANGEMEN T 4 Memory Management (Logical vs. Physical Address Space, Swapping, Contiguous Allocation, Paging, Segmentation, Segmentation with Paging etc.) Virtual Memory (Dema nd Paging, PageReplacement, Page Replaceme nt Algorithms, Allocation of frames, Thrashing etc.) File System Interface and Implementation (File Concept, Access Methods, Directory Structure, Protection, File System Struct ure, Allocation Methods, Free Space Management, Directory Implementation etc.) Network Commu nication 1 Chapter 8 2 Chapter 9 2 Chapter 10 2 Chapter 11 1 Chapter 14, 15 What is an OS? What is an os OS is needed to do three things: abstraction Security multipelxing An OS securely abstracts and multiplexes hardware What is an OS Abstraction, protection and multiplexing of: Clock RAM Hard-disk Network interface Keyboard and display peripherals