Operating Systems

Course Objectives

The aims of this course:

  • To provide a thorough discussion of the fundamentals of operating system designs, and to learn the current directions in the development of operating systems.
  • To explain each of the major achievements in OS research and discuss the key design areas that have been instrumental in the development of modern OS.
  • To analyze the distinction between process and thread and explain the basic design issues for threads.
  • To discuss basic concepts related to concurrency, such as race conditions, OS concerns and mutual exclusion requirements.
  • To describe the concepts of deadlock and the conditions for deadlock.
  • To study the fact that the memory management is a complex interrelationship between processor hardware and operating software.
  • To define and explain rate monotonic scheduling and priority inversion.
  • To understand the characteristics, how to adopt the embedded application in existing OS and design requirements of embedded system.
  • To understand CIA triad security model and to get the knowledge of computer virus, and its concealment strategies.

Learning Objectives

The successful completion of this course, Student will be able:

  • To gain the knowledge of real-world design choices with case studies in Linux, UNIX, Android, and Windows 10.
  • To know major theoretical advance in the development of OS, processes management, memory management, information protection and security, scheduling and resource management.
  • To distinguish the characteristics of process, thread and understand the benefits using multithreading within a single process and the two aspects of thread functionality.
  • To provides a good practical introduction to programming using concurrency.
  • To know the concepts of deadlock and strategies of deadlock prevention, avoidance and detection for supporting concurrent processes.
  • To develop the implementation of the basic memory management algorithms.
  • To understand how to schedule to achieve greater overall processor utilization.
  • To identify the characteristic of embedded Linux Operating System and open-source Linux kernel micro-controller.
  • To explain the concepts of confidentiality, availability, and integrity (CIA) in context of Information assurance.

Reference Materials

Reference Book's Photo Reference Book's Materials
Operating Systems Internals and Design Principles (9th Edition) by William Stallings
Operating Systems Internals and Design Principles (7th Edition) by William Stallings
Operating System Internal and Design Principle (5th Edition) by William Stallings

Assessment Plan

Assessment Plan for the Course
Paper Exam 50%
Lab Test (including Tutorials) 20%
Assignment 10%
Class Participation 5%
Quizzes/ Moodle 15%