DEPARTMENT OF COMPUTER ENGINEERING
College of Electrical and Mechanical Engineering (CEME)
National University of Sciences and Technology (NUST)
1. Course Information
Course Number and Title: EC-221 Operating Systems
Credits: 3 (3-0)
Instructor(s)-in-charge: Asst. Professor Dr. Muhammad Yasin
Course type: Lecture
Required or Elective: Required
Course pre-requisites None
Degree and Semester CE-46-B
Month and Year Spring 2026
2. Course Schedule
Lecture: 3 hrs/week, Meets twice weekly
Lab: None
Discussion: 1 hr/discussion, multiple discussion sections offered per quarter
Outside study: 6-7 hrs/week
Office Hours: 3 hrs/week by instructor
3. Course Assessment
Exam: 1 Mid Term and 1 Final
Home work: 3-4 Assignments
Quizzes: 6-7 Quizzes
Quizzes: 10 %
Assignments: 5%
Grading(Tentative): Mid Term Exam: 25 %
Final Exam: 40%
Semester Project: 20%
4. Course book and Related Course Material
Textbooks: 1. Abraham Silberschatz, Peter Baer Galvin and Greg Gagne:
Operating System Concepts, 9th Edition, John Wiley and Sons,
ISBN 13: 978-1118129388.
Reference Books: 1. Andrew S. Tanenbaum, Herbert Bos: Modern Operating Systems,
4th Edition, Pearson, ISBN 13: 978-0133591620
2. William Stallings: Operating Systems, 7th Edition, Prentice Hall,
ISBN 0-13-031999-6
5. Catalog Descriptions
This course will introduce the core concepts of operating systems, such as processes and threads, scheduling,
synchronization, memory management, file systems, input and output device management and security. The course
will consist of assigned reading, weekly lectures, one mid and final exam, semester project, and a sequence of
assignments and quizzes. The goal of the readings and lectures is to introduce the core concepts. The goal of the
project and assignments is to give students some exposure to operating system code and concepts. Students are
expected to read the assigned materials prior to each class, and to participate in in-class discussions.
6. Course Objectives
To study and discuss the fundamental operating system concepts covering the system structures, process management,
threading, CPU scheduling, synchronization, deadlocks, main memory and secondary storage management, virtual
memory, file-system implementation, I/O systems, disk scheduling and security, to be able to understand
methodologies of parallel and multitasking operating systems
7. Topics covered in the Course and Level of Coverage
Topic Description Coverage
Operating OS Services, OS interface, System Calls, System programs, OS 6 hrs
System design and implementation, OS structures (Real-time, general
Structures purpose & embedded)
Processes Process concept and states, process scheduling, operations on 4 hrs
processes, inter-process communications
Threads Multicore programming, multithreading models, thread libraries, 3 hrs
threading issues, operating system examples
Process Critical section problem, mutex locks, semaphores, classic problems 8 hrs
Synchronization of synchronization, monitors, examples
CPU Scheduling criteria, scheduling algorithms, thread scheduling, multi- 4 hrs
Scheduling processor scheduling, real-time CPU scheduling
Deadlocks Characterization, handling, prevention, avoidance, detection, 3 hrs
recovery
Main Memory Memory allocation, swapping, segmentation, paging, example 6 hrs
Management architectures
Virtual Memory Demand paging, page replacement algorithms 3 hrs
Mass Storage Disk structure, disk scheduling, disk management, RAID structure 4 hrs
File Systems Access methods, disk and directory structure, sharing, protection, 3 hrs
file system implementations
Distributed OS Review of Distributed Operating Systems 2 hrs
Review
Total Hours 46 hrs
8. Mapping of Topics
CLO Course Learning Outcomes PLOs Learning
(CLOs) Level
CLO 1 Be able to discuss the characteristics of different structures of the Operating PLO 1 C2
Systems (such as microkernel, layered, virtualization, etc.) and identify the
core functions of the Operating Systems.
CLO 2 Be able to explain the principles and compare the algorithms on which the PLO 1 C2
core functions of the Operating Systems are built on.
CLO 3 Be able to analyse and evaluate the algorithms of the core functions of the PLO 2 C4
Operating Systems and explain the major performance issues with regard to
the core functions.
CLO 4 Be able to develop parallel applications using techniques and tools available PLO 3 C4
in modern systems (such as threads, system calls, semaphores, etc.).
9. Program Learning Outcomes
PLO 1 Engineering Knowledge
An ability to apply knowledge of mathematics, science, engineering fundamentals and an engineering
specialization to the solution of complex engineering problems .
PLO 2 Problem Analysis
An ability to identify, formulate, research literature, and analyze complex engineering problems
reaching substantiated conclusions using first principles of mathematics, natural sciences and
engineering sciences.
PLO 3 Design/Development of Solutions
An ability to design solutions for complex engineering problems and design systems, components or
processes that meet specified needs with appropriate consideration for public health and safety,
cultural, societal, and environmental considerations.
PLO 4 Investigation
An ability to investigate complex engineering problems in a methodical way including literature
survey, design and conduct of experiments, analysis and interpretation of experimental data, and
synthesis of information to derive valid conclusions.
PLO 5 Modern Tool Usage
An ability to create, select and apply appropriate techniques, resources, and modern engineering and
IT tools, including prediction and modeling, to complex engineering activities, with an understanding
of the limitations.
PLO 6 The Engineer and Society
An ability to apply reasoning informed by contextual knowledge to assess societal, health, safety,
legal and cultural issues and the consequent responsibilities relevant to professional engineering
practice and solution to complex engineering problems.
PLO 7 Environment and Sustainability
An ability to understand the impact of professional engineering solutions in societal and environmental
contexts and demonstrate knowledge of and need for sustainable development.
PLO 8 Professional Ethics
Apply ethical principles and commit to professional ethics and responsibilities and norms of
engineering practice.
PLO 9 Individual and Teamwork
An ability to work effectively, as an individual or in a team, on multifaceted and /or multidisciplinary
settings.
PLO 10 Communication
An ability to communicate effectively, orally as well as in writing, on complex engineering activities
with the engineering community and with society at large, such as being able to comprehend and write
effective reports and design documentation, make effective presentations, and give and receive clear
instructions.
PLO 11 Project Management
An ability to demonstrate management skills and apply engineering principles to one’s own work, as
a member and/or leader in a team, to manage projects in a multidisciplinary environment.
PLO 12 Lifelong Learning
An ability to recognize importance of, and pursue lifelong learning in the broader context of innovation
and technological developments