1/68
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
Deadlock
Occurs when threads are waiting for resources with circular dependencies.
Nonpreemptable resources
Resources that cannot be taken away from a current thread without failing its computation.
Example of Deadlock
Can occur if multiple threads hold resources and each is waiting for a resource held by another.
Starvation
A situation where a thread waits indefinitely for resources.
Deadlock and Starvation Relationship
A deadlock implies starvation.
Dining Philosophers Problem
A classic example of deadlock where philosophers need two chopsticks to eat.
Deadlock Prevention Strategy
Remove one of the four necessary conditions for a deadlock to occur.
Infinite resources
A deadlock prevention technique involving buying a very large disk.
No sharing
A technique where threads do not share resources to avoid deadlocks.
Resource Ordering
A technique where all threads access resources in the same order.
Banker’s Algorithm
An algorithm that determines if resource allocation will lead to deadlock.
Deadlock Detection
The process of scanning the resource allocation graph to identify circular chains of requests.
Rollback Action
Restoring a thread to a previous state to recover from a deadlock.
Semaphore
A signaling mechanism used to control access to a common resource.
Circular Dependency
A situation where each thread in a set is waiting for a resource held by another thread in the set.
Preemptable resources
Resources that can be taken from a thread without causing any failure.
Round-Robin Scheduling
A CPU scheduling method that does not prevent deadlocks.
Thread A and Thread B Example
An example where threads deadlock due to waiting for resources held by each other.
Chopstick Allocation
In the Dining Philosopher's problem, each philosopher must first acquire two chopsticks to eat.
Resource Allocation Graph
A graphical representation used for detecting deadlocks in a system.
Checkpointing
Taking snapshots of system states to aid in recovery from deadlocks.
Blocking
A condition in which threads are unable to proceed because they are waiting for resources.
Live Lock
A situation where threads are active but unable to make progress due to conflicting actions.
Thread
A sequence of programmed instructions that can be managed independently by a scheduler.
Resource Management
The process of efficiently allocating resources among competing threads.
Infinite Resources Example
Acquiring an extremely large disk to avoid resource shortages.
Exclusion of Waiting
A technique where a thread cannot wait indefinitely for resources.
Deadlock Conditions
Four conditions must hold true for a deadlock to occur: Mutual exclusion, Hold and wait, No preemption, and Circular wait.
Thread Prioritization
The method of assigning priority levels to threads to manage resource allocation effectively.
Resource Request
A demand made by a thread for certain resources required to perform its task.
Maximum Resource Needs
The highest amount of resource that a thread might request during its execution.
Circular Wait
A situation where a set of threads are each waiting for a resource that the next thread in the cycle holds.
Recovery Techniques
Methods employed to resolve deadlocks once detected.
Kill or Rollback
Possible actions taken to resolve a deadlock by terminating a thread or reverting to a prior state.
Consistency of System State
Ensuring that the system remains in a valid state after recovering from deadlocks.
Resource Acquisition Order
The predetermined sequence in which resources should be requested by threads.
Allocation Graph Cycle
A cycle in the resource allocation graph indicating the presence of a deadlock.
Dynamic Resource Allocation
Allocating resources to threads as per their request during execution.
Indefinite Waiting
A situation where a thread may never receive the resources it needs due to deadlocks.
Semaphore Array
An array of semaphores used to manage access to shared resources.
Process Coordination
The method by which operating system manages concurrent processes.
Deadlock Prevention Techniques
Strategies used to avoid the occurrence of deadlocks in a system.
Deadlock Risk Factor
The measure of how likely a deadlock is to occur based on system design.
Threads in Competition
Multiple threads vying for limited resources, which may result in deadlocks.
Resource Allocation Strategy
Plans enacted to handle requests for resources among concurrently running threads.
Cyclic Dependency
A situation in which a resource request forms a circle back to the original requester.
Resource Hold Policy
The protocol that governs how resources can be held by threads.
Unsafe State
A state where resource allocation can lead to potential deadlocks according to the Banker’s algorithm.
Resource Preemption Policy
Guidelines that determine whether resources can be taken away from running threads.
Wait-Die Scheme
A deadlock prevention strategy in which older transactions can wait for younger ones to release locks, while younger transactions are aborted if they request locks held by older ones.
Wound-Wait Scheme
A variation of deadlock prevention where older transactions can block younger ones.
Thread Synchronization
The coordination between threads to ensure correct operation in resource sharing.
Deadlock Simulation
A testing strategy to observe and analyze potential deadlocks in system design.
Dynamic Wait-For Graph
A representation of current waits in the system to assist in detecting deadlocks.
Throughput Impact
The effect on system throughput caused by waiting threads, potentially leading to deadlocks.
Concurrency Control
The control mechanisms put in place to manage simultaneous operations in a system.
Thread Scheduling
The process of determining which thread runs at any given time.
Preventive Measures
Actions taken proactively to avoid deadlocks in system design.
Thread Resource Quotas
Limits enforced on the resources allocated to individual threads.
Deadlock Classification
The categorization of deadlocks based on their occurrence and resolution strategies.
Mature Deadlock System
A system that has cycles and resources are heavily interdependent.
Inter-thread Communication
The communication methods used among threads to avoid deadlock situations.
Predictive Algorithms
Algorithms that predict the risk of deadlocks based on current system states.
Efficiency in Resource Usage
Optimizing the allocation and use of resources to minimize deadlocks.
Dynamic Resource Quota Management
Adjusting the resource quotas of threads in real-time based on their usage.
Look-Ahead Resource Planning
A strategy to foresee resource needs before deadlocks can occur.
Redundant Resource Allocation
Extra allocation of resources to mitigate the risk of deadlocks.
Resource Request Protocol
The procedures set for requesting resources to streamline thread operations.
Access Sequence Consistency
The maintenance of a consistent order in accessing resources across multiple threads.