Module 7 Flashcards
Test and set lock
a hardware instruction that locks memory locations while
they are being accessed by a process.
Race condition
the system attempts to perform two or more operations at
the same time, but due to the underlying context switching and scheduling
implementations by the OS, the ordering of these operations is not
guaranteed. The result of the operations changes as a function of changes in
ordering.
Semaphore
a semaphore is a kernel object with an integer value. It supports
two operations, P and V, which modify the integer value.
○ P: One of the operations of a semaphore. If the semaphore’s value is
greater than zero, decrement. Otherwise, wait until the value is greater
than zero and then decrement. Sometimes it is also called wait.
○ V: One of the operations of a semaphore. Increment the value of the
semaphore. Sometimes it is also called signal or post.
○ Binary semaphore: a semaphore that saturates at an integer value of
1.
○ Counting semaphore: a semaphore th
Waiting queue
processes or threads waiting to enter the critical section are
notified, or “woken up”, when the process currently using the critical section
exits. This strategy helps eliminate the need for busy waiting in the
semaphore implementation.
Deadlock
two or more processes are waiting indefinitely for an event that
can be
● caused by only one of the waiting processes.
Monitors
a high-level abstraction that provides a convenient and effective
mechanism for process synchronization. Only one process may be active
within the monitor at a time.
Condition Variables
a primitive with two functions, wait and signal.
○ Wait: a condition variable function called by a process that waits for a
condition to be true
○ Signal: a condition variable function that wakes up a process waiting
on the condition to be true