Algorithm Concurrency - Control Problems Flashcards
Atomic Operation
A function or action implemented as a sequence of one or more instructions that appears to be indivisible.
No other process can see an intermediate state or interrupt the operation
The sequence of instructions is guaranteed to execute as group or no execute at all.
Critical Section
A section of code within a process that requires access to shared resources that must not be executed while another process is in a corresponding section of code.
A deadlock
A situation in which two or more processes are unable to proceed because each is waiting for one or the others to do something
Livelock
A situation in which two ore more processes continuously change their states in response to changes in the other process(es) without doing any useful work.
Mutual Exclusion
The requirement that when one process is in a critical section that accesses shared resources, no other process may be in a critical section that accesses any of those shared resources.
Race condition
A situation in which multiple threads or processes read and write a shared data item and the final result depends on the relative timing of their execution
Starvation
A situation in which a runnable process is overlooked indefinitely by the scheduler, although it is able to proceed, it is never chosen.