CENG 322
Operating Systems
The course provides the main operating system functionalities and implementation details. It covers basic operating systems concepts, introduces process concepts and process management policies, discusses main memory and virtual memory techniques, and storage and I/O management issues.
Course Objectives
1. Understand basic operating systems concepts.
2. Understand process/thread execution, synchronization, and scheduling issues.
3. Understand operating system memory management policies.
4. Understand storage management techniques.
Recommended or Required Reading
A. Silberschatz, P.B. Galvin, G. Gagne: Operating System Concepts, 10th Edition, John Wiley & Sons, 2018.
Learning Outcomes:
1. Analyze and design modern architecture and operating systems by acquiring the basic concepts of operating systems.
2. Analyze systems that include operating systems and identify related problems.
3. Compare different solution methods for operating system problems and choose the most appropriate one.
| LECTURE | LAB |
| Introduction+Basics – CH1 | Linux Intro |
| OS Structures – CH2 | Shell script |
| Processes – CH3 | C |
| Processes – CH3 | C Pointer |
| IPC – CH3 | Process |
| Threads – CH4 | Process |
| Threads – CH4 | Process |
| Synchronization – CH6 | Threads |
| Midterm | Threads |
| Synchronization – CH7 | Threads/Synchronization |
| CPU Scheduling – CH5 | Programming Assignment 2 DEMO |
| Main Memory – CH9 | Programming Assignment 3 DEMO |
| Virtual Memory – CH10 |
Grading
Midterm 20%
Assignments 40%
Final 40%

