Operating Systems

First Semester AY 2025-2026

About

Catalog Description
Course Number CMSC 125
Course Title Operating Systems
Description Processor management, memory management, file and disk management, resource management, concurrent processes, networks and distributed systems.
Prerequisites CMSC 123 or COI
Credit 3 units
Aim

The aim of this course is to introduce students to operating systems concepts.

Objectives
At the end of this course the student should be able to:
  1. describe the purpose and functions of an operating system;
  2. design and implement programs to perform simple operating system tasks; and
  3. evaluate the performance of different operating system algorithms.
Topics (based on ACM's 2023 Curriculum Guidelines)
  1. OS/Overview of Operating Systems
  2. OS/Operating System Principles
  3. OS/Concurrency
  4. OS/Scheduling and Dispatch
  5. OS/Memory Management
  6. OS/Security and Protection
  7. OS/Virtual Machines
  8. OS/Device Management
  9. OS/File Systems
  10. OS/Real Time and Embedded Systems
  11. OS/Fault Tolerance
  12. OS/System Performance and Evaluation
  13. SF/Cross-Layer Communications
  14. SF/Resource Allocation and Scheduling
  15. SF/Virtualization and Isolation
Evaluation/Grading(may be adjusted)
(A) Two Lecture Exams 40%
(B) Lecture Quizzes/Homeworks 10%
(C) ICS-OS Project (individual) 10%
(D) Laboratory 40%
(E) Final A+B+C+D=100%
Passing grade is 55%. No grade of 4.0 will be given. Grading scale is shown below.
0.00 54.99 5.0
55.00 59.99 3.0
60.00 64.99 2.75
65.00 69.99 2.5
70.00 74.99 2.25
75.00 79.99 2.0
80.00 84.99 1.75
85.00 89.99 1.5
90.00 94.99 1.25
95.00 100 1.0
Attendance Policy

Universiry Policy on Attendance will apply.

Collaboration Policy

All activities will be done individually.

Honor Code
  • Properly acknowledge help received by indicating your sources in your submissions.
  • No looking at solutions/programs from previous years.
  • No sharing of code with other students.
  • Be ready to explain your code.
Google Classroom: (You will be added manually)

Staff

Name Role Email
Joseph Anthony C. Hermocilla Lecture/Laboratory Instructor jchermocilla@up.edu.ph
Fermin Roberto G. Lapitan Laboratory Instructor @up.edu.ph
Leonard Paul A. Garchitorena Laboratory Instructor @up.edu.ph
Von Michael B. Arellano Laboratory Instructor @up.edu.ph
Danilo J. Mercado Laboratory Instructor @up.edu.ph

Schedule

Week Scheduled Date Topics OSTEP Laboratory
1 Aug 11-15
  • Introduction to the Course
Tutorial01: Installing Ubuntu Desktop 20.04 on VirtualBox
2 Aug 18-22
  • Introduction to OS
  • The Process Abstraction
  • Process API Example
2,4,5 Lab01: Advanced Linux Commands
3 Aug 25-29
  • Limited Direct Execution
  • Intoduction to Scheduling
6,7 Lab02: BASH Shell Scripting
4 Sep 1-5
  • Multi-Level Feedback Queue
  • Fair-Share Scheduling
  • Multiprocessor Scheduling
8,9,10 Lab03: Process API in Linux
5 Sep 8-12
  • Address Spaces
  • Memory API
  • Address Translation
13,14,15 Lab04: CPU Scheduling Simulations
6 Sep 15-19
  • Segmentation
  • Free Space Management
16,17 Lab05: Understanding the PC Boot Process
7
EXAM 1
Sep 22-26
  • Paging
  • TLB
  • Smaller Page Tables
18,19,20 Lab06: Unix System V Shared Memory API
8 Sep 29-Oct 3
  • Swapping Mechanisms
  • Policies and Mechanisms for Memory
21,22,23 Lab07: Virtual Memory Simulation
Oct 6-10 Reading Break
9 Oct 13-17
  • Concurrency
  • Thread API
  • Locks
26,27,28 Lab10: [ICS-OS]Command Line Interface, System Calls, and System Utilities
10 Oct 20-24
  • Lock-based concurrent data structures
  • Condition variables
  • Semaphores
29,30,31 Lab08: Programming with PThreads
11 Oct 27-31
  • Common Concurrency Problems
  • Event-based Concurrency
32,33 Lab09: Thread Synchronization in PThreads
12 Nov 3-7
  • I/O Devices
  • HDD
36,37 Lab11: [ICS-OS] Environment Variables, Processes, and Threads
13 Nov 10-14
  • Files and Directories
39
14 Nov 17-21
  • Filesystem Implementation
40
15
EXAM 2
Nov 24-28 (buffer week)
16 Dec 1-5 (buffer week)

Resources

Textbook

[OSTEP]Remzi H. Arpaci-Dusseau and Andrea C. Arpaci-Dusseau. 2018. Operating Systems: Three Easy Pieces. CreateSpace Independent Publishing Platform, North Charleston, SC, USA.

Supplementary Textbooks
Similar OS Courses
Software
Others