ITGS302 : Operating System

Department

Department of Mobile Computing

Academic Program

Bachelor in Mobile Computing

Type

General

Credits

03

Prerequisite

ITGS223

Overview

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.

Teaching and learning methods

  • Lectures
  • Tutorials
  • Problem-based learning
  • Mini-projects

Methods of assessments

  • Midterm Exam = 30
  • Assignments = 10
  • Mini-project = 10
  • Final Exam = 50

Course contents

  • General concepts in operating systems
  • Process Management
  • Process scheduling
  • Process Scheduling - Algorithms
  • Process synchronization
  • Midterm Exam
  • Deadlock
  • Deadlock Algorithms
  • Main memory
  • Main memory - exercises
  • Virtual memory
  • Virtual Memory - Placement Algorithms
  • Device manager

Principles of Games Developments (ITMC404)
Parallel and Distributed Computing (ITMC403)
Mobile Multimedia (ITMC402)
Mobile 3D Graphics (ITMC401)
Mobile Commerce (ITMC304)
Programming Paradigms (ITMC302)
ARM microprocessor (ITMC301)
Arabic language 1 (ITAR111)
General English1 (ITEL111)
Physics (ITPH111)
Intro to Information Technology (ITGS111)
Problem solving Technic (ITGS113)
Mathematics I (ITMM111)
Arabic language 2 (ITAR122)
Mathematics II (ITMM122)
General English2 (ITEL122)
Introduction to Programming (ITGS122)
System Analysis and Design (ITGS124)
logic Circuit Design (ITGS126)
Introduction to Statistics (ITST211)
Object Oriented Programmin (ITGS211)
Introduction to Software Engineering (ITGS213)
Introduction to Networking (ITGS215)
Discrete Structures (ITGS217)
Numerical analysis (ITGS219)
Computer Architucture & Organization (ITGS223)
Data Structure (ITGS220)
Foundation of Information Systems (ITGS222)
Information Security (ITGS224)
Introduction to Internet Programming (ITGS226)
Introduction to Databases (ITGS228)
Mobile Applications Development (ITMC311)
Design and Analysis algorithms (ITGS301)
Operating System (ITGS302)
Principles of mobile communication networks (ITMC312)
IT Project Management (ITGS303)
Scientific Writing (ITGS304)
Cross-Platform Mobile App Development (Flutter) (ITMC323)
Heterogeneous and Mobile Databases (ITMC322)
Mobile Interaction Design (ITMC321)
Mobile Operating System (ITMC313)
Security in mobile computing (ITMC411)
Personal Area Networks (ITMC412)
Social Networking (ITMC413)
Networks Programming (ITMC414)
Fundamentals ubiquitous computing (ITMC421)
Cloud Computing (ITMC422)