Page 123 - DCAP403_Operating System
P. 123
Operating System
Notes 6.8 Summary
Race condition is a flaw in a system of processes whereby the output of the process is
unexpectedly and critically dependent on the sequence of other processes.
It may arise in multi-process environment, especially when communicating between
separate processes or threads of execution.
Mutual exclusion means that only one of the processes is allowed to execute its critical
section at a time. Mutex, semaphores and motors are some of the process synchronization
tools. Mutex is a software tool used in concurrency control. It is short form of mutual
exclusion.
A mutex is a program element that allows multiple program processes to share the same
resource but not simultaneously. Semaphore is a software concurrency control tool.
It bears analogy to old Roman system of message transmission using flags. It enforces
synchronization among communicating processes and does not require busy waiting.
In counting semaphore the integer value can range over an unrestricted domain. In binary
semaphore the integer value can range only between 0 and 1.
A monitor is a software synchronization tool with high-level of abstraction that provides
a convenient and effective mechanism for process synchronization. It allows only one
process to be active within the monitor at a time.
Bounded Buffer Problem, readers and writers problem, sleeping barber problem, and
dining philosopher problem are some of the classical synchronization problems taken from
real life situations.
A deadlock is a situation wherein two or more competing actions are waiting for the other
to finish, and thus neither ever does. Resource Allocation Graphs (RAGs) are directed
labeled graphs used to represent, from the point of view of deadlocks, the current state
of a system. There are several ways to address the problem of deadlock in an operating
system – Prevent, Avoid, Detection and recovery and Ignore.
6.9 Keywords
Deadlock: A deadlock is a situation wherein two or more competing actions are waiting for the
other to finish, and thus neither ever does.
Monitor: It is a software synchronization tool with high-level of abstraction that provides a
convenient and effective mechanism for process synchronization.
Mute: It is a program element that allows multiple program processes to share the same resource
but not simultaneously.
Mutex: It is a software tool used in concurrency control. It is short form of mutual exclusion.
Mutual exclusion: It means that only one of the processes is allowed to execute its critical section
at a time.
Race condition: It is a flaw in a system of processes whereby the output of the process is
unexpectedly and critically dependent on the sequence of other processes.
Resource Allocation Graphs (RAGs): Those are directed labeled graphs used to represent, from
the point of view of deadlocks, the current state of a system.
Semaphore: It is a software concurrency control tool.
116 LOVELY PROFESSIONAL UNIVERSITY