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
   118   119   120   121   122   123   124   125   126   127   128