Subject Code: CS3L005 Subject Name: Operating Systems L-T-P: 3-0-0 Credits: 3
Pre-requisite(s): Introduction to Programming and Data Structure
Operating systems – overview and objectives; Process concept – process control block, process life cycle; multi-processing and process management, multi-threaded programming; Process scheduling – long and short time scheduling, preemptive and non-preemptive scheduling, dispatching, scheduling criteria and algorithms; Concurrent cooperating sequential processes – process synchronization, critical section, synchronization hardwares, semaphores, monitors; Deadlocks – conditions for deadlock, deadlock prevention, avoidance, detection and recovery, classic problems; Memory management – partitioning, paging, segmentation, segmentation with paging; Virtual memory – demand paging, page replacement policies; I/O systems – I/O interfaces and busses, interrupt structures and interrupt handlers, Direct memory access; File systems – disk structures and disk accesses, blocking and buffering, directories and file allocation strategies, protection. RAID structures; Overview of Security and protection; Concepts of distributed and real time systems; Examples will be drawn from existing operating systems.
Text Book:
  1. A. Silberschatz, P. B. Galvin and G. Gagne, “Operating System Principles,” John Wiley & Sons.
  2. W. Stallings, “Operating Systems– Internals & Design Principles,” Pearson Education.            
Reference Book:                                                       
  1. A. S. Tenenbaum, “Modern Operating Systems,” Prentice Hall.