Term
|
Definition
A situation where the outcome of the process depends on the order that threads execute. |
|
|
Term
|
Definition
Making processes behave in a way that eliminates race conditions. |
|
|
Term
|
Definition
The problem regarding the fact that there may exist areas of code in threads that alter certain variables in a way that causes unexpected behavior. A solution must address three main components: Mutual Exclusion, Progress, and Bounded Waiting. |
|
|
Term
|
Definition
Areas of code where the process is changing variables or tables, and no other process should access these same data. |
|
|
Term
|
Definition
Only one process may be in the critical section at a time. |
|
|
Term
|
Definition
Only processes that still need to execute their critical sections can be involved in the decision as to which process enters the critical section. Cannot be indefinitely postponed. |
|
|
Term
|
Definition
A process cannot be kept out of its critical section forever because other processes want to enter theirs. |
|
|
Term
|
Definition
The code that requests that the process may enter its critical section. |
|
|
Term
|
Definition
The code that shows that the process is leaving its critical section. |
|
|
Term
|
Definition
The code outside the critical section. |
|
|
Term
|
Definition
A limited solution to the critical section problem where there is a turn integer, and an array of size two which indicates which processes are ready to enter the critical section. When the process is able to enter the critical section and its the process's turn, it may enter the critical section. |
|
|
Term
|
Definition
An atomic operation where a value is tested and then set. |
|
|
Term
|
Definition
An atomic operation that swaps two words. |
|
|
Term
|
Definition
A method that cannot be interrupted. |
|
|
Term
|
Definition
An atomic variable that is only accessed through wait() and signal(). |
|
|
Term
Semaphore Wait/Acquire Operation |
|
Definition
Waits until s is greater than zero and decrements it. |
|
|
Term
Semaphore Signal/Release Operation |
|
Definition
|
|
Term
|
Definition
A semaphore that can range over some unspecified domain. |
|
|
Term
|
Definition
A semaphore that can only be zero or one. |
|
|
Term
|
Definition
Waiting that uses a lot of CPU time by continuously checking a condition. |
|
|
Term
|
Definition
Another name for busy waiting. |
|
|
Term
|
Definition
When two or more processes are indefinitely blocked because they are both waiting on something to happen that only the other blocked process can do. |
|
|
Term
|
Definition
Indefinite blocking due to continuous waiting in the semaphore structure. |
|
|
Term
|
Definition
A situation in which the values of priority are suddenly switched, and lower priority processes execute before higher priority processes. |
|
|
Term
|
Definition
A solution to priority inversion where if a lower priority process owns a turnstile that a high priority process is blocked on, the lower priority process will temporarily gain the higher priority. |
|
|
Term
|
Definition
Ensuring that a producer with not put an item in a full buffer and a consumer will not take an item from an empty buffer. |
|
|
Term
|
Definition
Ensuring that writers have exclusive access to whatever they are writing to, in order to prevent worldwide chaos and mayhem. |
|
|
Term
Dining Philosophers Problem |
|
Definition
The problem of philosophers not being capable of eating without turning it into a though experiment. Also chopsticks. |
|
|
Term
|
Definition
A data structure where a procedure in the monitor can only access the local variables and its formal parameters. And the local variables can only be accessed by the local procedures. |
|
|
Term
|
Definition
A queue of threads, associated with a monitor, on which a thread may wait for some condition to come true. |
|
|
Term
Condition Variable Wait Operation |
|
Definition
The operation that waits for a condition to come true by adding it too a pool, and blocking. |
|
|
Term
Condition Variable Signal Operation |
|
Definition
The operation that removes a thread from the pool and sets it to occupy the monitor while running. |
|
|