Introduction: Definition and types of operating systems, Batch Systems, multi programming, time–sharing parallel, distributed and real-time systems, Operating system structure, Operating system components and services, System calls, system programs, Virtual machines.
Process Management: Process concept, Process scheduling, Cooperating processes, Threads, Inter-process communication, CPU scheduling criteria, Scheduling algorithms, Multiple processor scheduling, Real-time scheduling and Algorithm evaluation.
Process Synchronization and Deadlocks: The Critical-Section problem, synchronization hardware, Semaphores, Classical problems of synchronization, Critical regions, Monitors, Deadlocks-System model, Characterization, Deadlock prevention, Avoidance and Detection, Recovery from deadlock, Combined approach to deadlock handling.
Storage management: Memory Management-Logical and Physical Address Space, Swapping, Contiguous Allocation, Paging, Segmentation with paging, Virtual Memory, Demand paging and its performance, Page replacement algorithms, Allocation of frames, Thrashing, Page Size and other considerations, Demand segmentation,
File systems, secondary Storage Structure, File concept, access methods, directory implementation, Efficiency and performance, recovery, Disk structure, Disk scheduling methods, Disk management, Recovery, Disk structure, disk scheduling methods, Disk management, Swap-Space management, Disk reliability.
Protection and Security-Goals of protection, Domain of protection, Access matrix, Implementation of access Matrix, Revocation of Access Rights, language based protection, The Security problem, Authentication, One Time passwords, Program threats, System threats, Threat Monitoring, Encryption.
Case study: Windows NT-Design principles, System components, Environmental, Environmental subsystems, File system, Networking and program interface.