College of Computer Science & Information Technology King Khalid University · جامعة الملك خالد
Course Level
Graduate
Format
Lectures · Labs · Projects
Location
Building 13 · First Floor · Room 45
Materials
Coming Soon
Course Information
Syllabus
Course Syllabus

Official course specification including learning outcomes, weekly topics, grading policy, references, programming projects, academic policies, and course expectations.

PDF Official 2026
Document
Version 1.0
Open PDF →
Weekly Schedule
Week 1
Course Introduction and OS Review

Course overview, expectations, development environment, Linux review, OS structure, system calls, user mode, kernel mode, and basic command-line tools.

Slides Setup Guide Linux Review
Module 1
Intro
Materials →
Week 2
Processes, Threads, and System Calls

Process abstraction, process creation, fork, exec, wait, context switching, POSIX threads, thread models, and system call interfaces.

Processes Threads Lab 1
Module 2
Lab
Materials →
Week 3
Synchronization and Concurrency

Race conditions, critical sections, locks, condition variables, semaphores, monitors, deadlock, and concurrent programming patterns.

Locks Semaphores Assignment 1
Module 3
Concurrency
Materials →
Week 4
CPU Scheduling

Scheduling policies, fairness, response time, throughput, real-time scheduling, multiprocessor scheduling, and scheduling tradeoffs.

Scheduling Simulation Lab 2
Module 4
CPU
Materials →
Week 5
Memory Management

Address spaces, memory allocation, segmentation, paging, page tables, translation lookaside buffers, and memory protection.

Memory Paging Assignment 2
Module 5
Memory
Materials →
Week 6
Virtual Memory

Demand paging, page replacement algorithms, working sets, swapping, copy-on-write, memory-mapped files, and virtual memory performance.

Virtual Memory TLB Lab 3
Module 6
VM
Materials →
Week 7
File Systems

File abstraction, directories, inodes, block allocation, journaling, crash consistency, file system layout, and reliability.

File Systems Journaling Project 1
Module 7
Storage
Materials →
Week 8
Storage and I/O Systems

Disk scheduling, SSD behavior, I/O stacks, buffering, caching, device drivers, storage performance, and benchmarking.

I/O Storage Benchmarking
Module 8
I/O
Materials →
Week 9
Virtualization

Virtual machines, hypervisors, hardware-assisted virtualization, virtual CPUs, virtual memory, device virtualization, and VM isolation.

VMs Hypervisors Assignment 3
Module 9
VM
Materials →
Week 10
Containers and OS-Level Isolation

Containers, namespaces, cgroups, union file systems, Docker, container security, and lightweight isolation mechanisms.

Containers Docker Lab 4
Module 10
Cloud
Materials →
Week 11
Distributed Operating Systems

Distributed process management, remote procedure calls, distributed file systems, naming, transparency, fault tolerance, and consistency.

Distributed OS RPC Paper Reading
Module 11
Distributed
Materials →
Week 12
Cloud Operating Systems

Operating systems for cloud environments, resource management, cluster scheduling, serverless platforms, and infrastructure abstraction.

Cloud Serverless Project Milestone
Module 12
Cloud
Materials →
Week 13
Operating System Security

Access control, privilege separation, sandboxing, authentication, kernel attack surfaces, isolation, and security case studies.

Security Isolation Case Study
Module 13
Security
Materials →
Week 14
Linux Kernel Internals

Linux kernel architecture, kernel modules, process management, memory subsystems, file systems, system calls, and kernel debugging.

Linux Kernel Kernel Modules Lab 5
Module 14
Kernel
Materials →
Week 15
Performance Analysis

Profiling, tracing, benchmarking, bottleneck analysis, Linux performance tools, scalability, and experimental evaluation.

Profiling Tracing Evaluation
Module 15
Perf
Materials →
Week 16
Final Project Presentations

Student project presentations, system demonstrations, evaluation results, research discussion, and final course review.

Presentation Demo Final Project
Final
Demo Day
Details →
Assessment
Grade
Course Evaluation

The course evaluation may include programming assignments, laboratory work, research paper summaries, quizzes, a midterm exam, and a final project. Exact percentages can be updated based on department policy.

Assignments Labs Midterm Final Project
Policy
TBD
Resources
Books
Textbooks and References

Recommended resources include operating systems textbooks, Linux documentation, kernel source code, systems research papers, and practical manuals for Linux, Docker, virtualization, and performance tools.

Textbook Linux Docs Kernel Source Research Papers
Reading
Coming Soon
Resources →
Course Philosophy

This course emphasizes understanding operating systems by building, measuring, debugging, and analyzing real system components. Students are expected to connect theoretical concepts with practical implementation and to critically read modern systems research.