Learning Outcomes:
On successful completion of this module the learner will be able to:
1. Explain what an operating system is, and why we study operating systems.
2. Define and use the concept of process and concurrency.
3. Understand the issues and techniques associated with process synchronisation (deadlock, starvation).
4. Understand process scheduling.
5. Understand memory management; real and virtual memory.
6. Define and apply the concept and mechanisms of file systems.
7. Understand the evolving role of operating system for cloud computing and pervasive computing environments.
8. Implement shell scripts to perform simple and complex tasks using Linux
Indicative Module Content:
- Introduction - what is an OS?
- OS structure and protection
- process management I - process and thread
- process management II - synchronisation
- process management III - deadlock and starvation
- process scheduling
- memory management
- file management