
SYLLABUS
OPERATING SYSTEMS COURSE II
Semester 6: Engineering Sciences Track
Fundamental Teaching Unit: UEF1 Subject: Operating System 2
Credits: 5 Weighting: 3 Learning Objectives:
An in-depth study of the Unix system is recommended during tutorial and practical sessions. Thread programming and mutual exclusion mechanisms will be implemented in C under Unix. Models such as producer/consumer, readers/writers, and the dining philosophers—along with several variations—will be studied theoretically (developing algorithms using pseudocode) during tutorials and subsequently implemented in C under Unix during practical sessions.
Recommended prior knowledge: operating system 1.
Course Content: Chapter 1:
A reminder about the concept of SE.
-
Concepts of program, process, thread and shared resource.
Chapter 2: Process Synchronization.
-
Problem of concurrent access to critical resources and sections (Mutual Exclusion Problem)
-
Synchronization tools:
-
Events, Locks
-
Semaphores
-
Monitors
-
Critical regions.
-
Chapter 3: Interprocess Communication
-
Sharing variables (models: producer/consumer, readers/writers)
-
Mailboxes
-
Message exchange (client/server model)
Chapter 4: The Interlock
-
Models
-
Prevention
-
Avoidance
-
Detection/Cure
Assessment method: Examination (60%), continuous assessment (40%)
