AIDS301/AIML301
Operating Systems
B.Tech (Artificial Intelligence & Machine Learning) • Semester 5
Overview
This course is intended to describe the fundamentals of operating systems, programming threads and concurrency, deadlock handling and memory management techniques, file systems and input/output operations, giving students an exposure to the file management systems. The course will also cover the functionality of the operating system, multiprocessor scheduling, process synchronization and several case studies of operating systems.
Course Syllabus
Unit I
Introduction: Operating system and function, Evolution of operating system, Batch, Interactive, Time Sharing and Real Time System, System protection.
Operating System Structure: System Components, System structure, Operating System Services.
CPU Scheduling: Scheduling Concept, process scheduling strategies- First-Come, First-Served (FCFS) Scheduling, Shortest-Job-Next (SJN) Scheduling, Priority Scheduling, Shortest Remaining Time, Round Robin (RR) Scheduling, Multiple-Level Queues Scheduling, Performance Criteria of Scheduling Algorithm, Evolution, Multiprocessor Scheduling.
Unit II
Concurrent Processes: Process concept, Principle of Concurrency, Producer Consumer Problem, Critical Section problem, Semaphores, Binary and counting semaphores, P() and V() operations, Classical problems in Concurrency, Inter Process Communication, Process Generation, Process Scheduling.
Deadlocks: examples of deadlock, resource concepts, necessary conditions for deadlock, deadlock solution, deadlock prevention, deadlock avoidance with Bankers algorithms, deadlock detection, deadlock recovery.
Unit III
Memory Organization & Management: Memory Organization, Memory Hierarchy, Memory Management Strategies, Contiguous versus non-Contiguous memory allocation, Partition Management Techniques, Logical versus Physical Address space, swapping, Paging, Segmentation, Segmentation with Paging.
Virtual Memory: Demand Paging, Page Replacement, Page-replacement Algorithms, Performance of Demand Paging, Thrashing, Demand Segmentation, and Overlay Concepts.
Unit IV
I/O Device and the organization: I/O Device and the organization of the I/O function, I/O Buffering, Disk I/O, Disk Scheduling Algorithms.
File system: File Concepts, attributes, operations, File organization and Access mechanism, disk space allocation methods, Directory structure, free disk space management, File sharing, Implementation issues.
Case studies: Unix system, Windows XP.