This course takes the student through the various concepts of operating system depending based on design considerations, functions performed and how these are achieved/implemented through hardware and software. The course delivered under two parts: part I and part II, each consisting of three modules.

Part I: is dedicated to the basic concept of Operating Systems such as definition and general Overview of O/S: Role & Purpose, Functionality Mechanisms to support Client-server models, handheld devices, Design Issues influences of Security, networking, multimedia, Windows. O/S Principle:  Structuring methods Abstraction, processes and resources.

Part II: deals with concept of process management; concepts of Cooperating Processes, Threads, and CPU Scheduling; Concurrency: States & State diagrams Structures, Dispatching and Context Switching; interrupts; Concurrent execution; Mutual exclusion problem and some solutions Deadlock; Models and mechanisms (Semaphores, monitors etc.). Producer-Consumer Problems and Synchronization. Scheduling & Dispatching Memory Management:  Overlays, Swapping and Partitions, Paging & Segmentations Placement & replacement policies, working sets and Trashing, Caching