What is an operating system, Main frame systems, Desktop systems, Multiprocessor system, Distributed system, Clustered system, Real time system, Hand held system, Feature migration, Computing environments.
System components, OS services, System calls, System programs, System structure, Virtual machines.
Process concept, Process scheduling, Operation on processes, Co-operating processes, Inter Process communication. Threads – Overview, Multithreading models, Threading issues, P threads, Java threads. CPU Scheduling – Basic concepts, Scheduling criteria, Scheduling algorithms, Multiple processor Scheduling, Real time Scheduling.
The critical section problem, Synchronization hardware, Semaphores, Classical problems of Synchronization, Critical regions, Monitors. Deadlock- System model, Dead lock characterization, Methods for handling Dead locks- Deadlock prevention, dead lock avoidance, Dead lock detection and recovery from deadlock.
Main memory management – Background, Swapping, Contiguous allocations, Paging, Segmentation, Segmentation with paging.
Background, Demand paging, Process creation, Page replacement algorithms, Allocation of frames, Thrashing.
File system interface - File concept, Access methods, Directory structure, File system mounting, File system implementation, Directory implementation, Allocation methods, free space management. 5 Hours Protection and Security: Goals of protection, Domain of protection, Access matrix, Implementation of access matrix, Revocation of access rights, The security problem, Authentication, Program threats, System threats, Securing systems and facilities, Intrusion detection, Cryptography. 4 Hours
Introduction to distributed operating systems: Background, Topology, Network types, Communication, Co-protocols, Robustness, design issues. 4 Hours Case Study- Linux Operating system:Design principles, Kernel modules, Process management, Memory management, and File systems, Input and Output, Communication. 3 Hours