This course deals with all essential concepts of operating systems. Starting with describing role of an operating system in managing different tasks during the processing operation. The course explains the process concept, in particular process description within an OS environment and its scheduling strategies. Also, it covers: memory management, virtual memory, I/O management and disk scheduling, file management. Mutual exclusion and synchronization, deadlock and starvation concepts and algorithms are discussed in details in this course supported with LAB work.
Intended learning outcomes
Knowledge &understand
Definition of process management in operating systems.
Order the arrival of processes using scheduling algorithms.
Explain the memory structure and how to manage it in operating systems.
mental skills
Explain how processes are populated in main memory.
Comparison of various scheduling algorithms.
Explain how processes are populated in main memory.
Practical & professional skills
Comparison between various operating systems (WINDOWS-LINUX-UNIX-).
Developing the elements of operating systems (process management - thread management - memory management - managing processor scheduling algorithms) in operating system software in a scientifically sound way.
Simulation of process and thread algorithms in a programming language
General and transferable skills
Employing management in operating systems in practical life
Dealing with various types of modern operating systems.
Applying and understanding the principle of teamwork on practical projects.