OBJECTIVES By the end of this course the trainee should be able to: a) Understand the principles of operating systems b) Appreciate the functions of operating systems c) Use operating systems in a computer environment
1. INTRODUCTION TO OPERATING SYSTEM
Meaning and importance of operating systems Definition of the operating systems Terminology’s Processes Files System calls Shell Virtual Machines Historical development of operating systems 1st Generation Operating Systems 2nd Generation Operating Systems 3rd Generation Operating Systems 4th Generation Operating Systems 5th generation Operating Systems Operating systems structure Monolithic system Layered system Client-server model Virtual Machines Types of operating systems Traditional Operating system Multiprocessor Operating System Distributed Operating System Job control Command languages Job control languages System messages 2. PROCESS MANAGEMENT Meaning and importance Process models Process levels Process states/models Inter-process communication Race conditions Critical sections Mutual exclusion with busy waiting Sleep and wake up Semaphores Monitors Message passing Process scheduling Process scheduling Scheduling algorithms SJF FCFS Round robin Priority scheduling Pre-emptive scheduling Multiple queues Evaluation of round robin in multiprogramming Synchronizing performance considerations Deadlocks Deadlock detection and recovery Deadlock avoidance Deadlock prevention