Operating Systems

Principles and Implementation

January 30, 2019
Koya University
Computer Engineering Dept.
BSc
2019
4 mins read

General Information

Course Description

This course provides a comprehensive introduction to operating system principles, design, and implementation using MINIX as a practical example. Students will explore the fundamental concepts that underlie modern operating systems, including process management, memory management, file systems, and I/O operations.

The curriculum covers both theoretical concepts and practical implementation aspects, enabling students to understand how operating systems manage hardware resources and provide services to application programs. Through hands-on experience with MINIX, students will gain insight into real operating system internals and learn how theoretical concepts translate into actual system code.

This course is essential for students pursuing careers in systems programming, embedded systems, or any field requiring deep understanding of computer system architecture and resource management.

Prerequisites

Course Objectives

Upon completion of this course, students will be able to:

Course Outline

Module 1: Introduction to Operating Systems

Module 2: Computer System Overview

Module 3: Process Description and Control

Module 4: Threads, SMP, and Microkernels

Module 5: Concurrency: Mutual Exclusion and Synchronization

Module 6: Concurrency: Deadlock and Starvation

Module 7: Memory Management

Module 8: Virtual Memory

Module 9: Uniprocessor Scheduling

Module 10: Multiprocessor and Real-Time Scheduling

Module 11: I/O Management and Disk Scheduling

Module 12: File Management

Textbooks

Assessment