Introduction: Definition of Operating systems, history of Operating systems, Operating system structure-monolithic systems, layered systems, virtual machine, client server model processes: The process model, process state transitions, process control block, operation on processes, suspend and resume, Interrupt processing, nucleus, implementation of processes. inter-process communication; Race condition, critical section, mutual exclusion with busy waiting, sleep and wakeup, semaphores, event counters, monitor, message passing, equivalence of primitives, producer-consumer relationship, readers and writers problems, dining philosopher `s problem, sleeping barber problem. Process Scheduling; scheduling objectives, scheduling criteria, preemptive vs. non-preemptive, interval timer or interrupting clock, deadline, FIFO, Round Robin, priorities, multiple queues, shortest job first, shortest remaining time, highest response ratio nest, fair share, policy versus mechanism, process management; job scheduling versus process scheduling, process scheduling, process scheduling policies, process scheduling algorithms, interrupts, deadlock, starvation Real Memory Management early system; single-user contiguous scheme, fixed partition, dynamic partition relocatable dynamic partition, relocatable dynamic partition Virtual Memory Management. Resent system; paged memory allocation. demand. page replacement policies.