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
1. Title: Operating Systems 2. Credit Structure (L-T-P-Cr): 3-0-2-4 3. Course Number: [a] Existing: IT308 [b] Proposed: 4. Slot: Semester 5 5. Category: Group Elective 6. Prerequisites: Computer Organization, Object-Oriented Programming, Data Structures and Algorithm, Systems Software 7. Foundation for: Technical Electives 8. Abstract Content: The course aims to introduce the fundamental concepts of operating system. The course relates these fundamentals with the design issues related to the development of modern operating systems. Understanding of concepts will be visualized and realized using simulation. Topics include process scheduling, Concurrency, Memory Management, Virtual Memory, I/O Management and Disk Scheduling, Security, and Distributed Systems Optional: 9. Suggested Text book: 1. ` Operating Systems: Internals and Design Principles’, sixth edition, by William Stallings, Prentice-Hall of India Private Limited, ISBN-10: 0136006329, ISBN-13: 9780136006329, 2009 Reading Material 1. “Computer Systems: A Programmer's Perspective”, Bryant and O'Hallaron, First edition, Pearson Education, 2003 2. `Operating System Concepts’, by Silberschatz, Galvin and Gagne, John WIley and Sons 3. `Operating Systems: a concept-based approach’, by D. M. Dhamdhere, Tata McGraw Hill Publishing Company 4. `Operating Systems: Design and Implementation’, by Andrew Tanenbaum and Albert Woodhull, Prentice-Hall of India Private Limited 5. `Distributed Operating Systems’, by Andrew Tanenbaum, Pearson Education, Asia 10. Detailed Contents: Topic Name Content No of Lectures Process Scheduling FCFS, SJF, SRTF, RR; starvation, fairness, response times, context switches, predictability, Priority queues, priority computations, effect of aging, Estimates and a Predictive policy, Scheduling on uniprocessors, Scheduling on multiprocessor systems 6 Concurrency Concurrent accesses to a shared resource; The Critical Section Problem, Mutual Exclusions, Synchronization, Deadlocks and Starvation Semaphores, Binary Semaphore and its implementation, Monitors, Message Passing, Readers/Writers Problem, Deadlock Handling Approaches: Deadlock prevention, Deadlock avoidance, Deadlock detection, Dining Philosophers 6 Parallel Programming Thread programming, parallel programming models: domain decomposition, task decomposition and pipelining, languages and libraries for parallel programming 5 Memory Management Address bindings (static-load-execution) and consequences to memory management, Logical vs. Physical Addresses and address translation, Performance and caching, Large Logical Address Spaces, Virtual Memory Techniques, Page Faults, Page Replacement Algorithms, Thrashing, Virtual memory, Page replacement, Strategies, Working Set 6 I/O Management and Disk Scheduling I/O Devices, I/O buffering, Disk Scheduling, Redundant Array of Independent Disks (RAID), Disk Cache 5 Security Security threats/attacks, Protection, Intruders, Malicious Software, Secure Communication Protocols, Trusted Systems 3 Distributed Systems Attributes of Distributed Systems, Client/Server, Distributed shared memory, Distributed file systems: NFS, Introduction to Clusters, Peer-to-peer, and Grid Computing 5 10. Evaluation Scheme One mid-term examination 25% Lab work and home assignment 10% Project work evaluation 30% Final theory examination 35%