Syllabus Operating Systems - (314442) Credit Scheme: Examination Scheme : 03 Credits Mid_Semester : 30 Marks End_Semester : 70 Marks Unit I OVERVIEW OF OPERATING SYSTEM Operating System Objectives and Functions, The Evolution of Operating Systems, Developments Leading to Modern Operating Systems, Virtual Machines, Introduction to Linux OS, BASH Shell scripting : Basic shell commands. (Chapter - 1) Unit II PROCESS MANAGEMENT Process : Concept of a Process, Process States, Process Description, Process Control Threads : Processes and Threads, Concept of Multithreading, Types of Threads, Thread programming Using Pthreads. Scheduling : Types of Scheduling, Scheduling Algorithms, First Come First Served, Shortest Job First, Priority, Round Robin. (Chapter - 2) Unit III CONCURRENCY CONTROL Process / thread Synchronization and Mutual Exclusion : Principles of Concurrency, Requirements for Mutual Exclusion, Mutual Exclusion : Operating System Support (Semaphores and Mutex). Classical synchronization problems : Readers / Writers Problem, Producer and Consumer problem, Inter-process communication (Pipes, Shared Memory). Deadlock : Principles of Deadlock, Deadlock Modeling, and Strategies to deal with deadlock : Prevention, Avoidance, Detection and Recovery. Example : Dining Philosophers Problem / Banker’s Algorithm. (Chapter - 3) Unit IV MEMORY MANAGEMENT Memory Management : Memory Management Requirements, Memory Partitioning : Fixed Partitioning, Dynamic Partitioning, Buddy System, Relocation, Paging, Page table structure, Segmentation. Virtual Memory : Background, Demand Paging, Page Replacement (FIFO, LRU, Optimal), Allocation of frames, Thrashing. (Chapter - 4) Unit V INPUT / OUTPUT AND FILE MANAGEMENT I/O Management and Disk Scheduling : I/O Devices, Organization of the I/O Function, I/O Buffering, Disk Scheduling (FIFO, SSTF, SCAN, C-SCAN, LOOK, C-LOOK). File Management : Overview-Files and File Systems, File structure. File Organization and Access, File Directories, File Sharing, Record Blocking, Secondary Storage Management. (Chapter - 5) Unit VI SYSTEMS SOFTWARE AND ITS IMPORTANCE Need of System Software, study of various components of system software. Assemblers : Elements of Assembly Language Programming, A simple Assembly Scheme and pass structure of Assemblers. Introduction to compilers : Phase structure of Compiler and entire compilation process. Introduction to Macro processors, Macro Definition and call, Macro Expansion Loaders and Linkers. General Loader Scheme, Subroutine Linkages, Relocation and linking Linkages, Relocation and linking. (Chapter - 6)