cps 590 chapt 6

0.0(0)
studied byStudied by 0 people
GameKnowt Play
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/28

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

29 Terms

1
New cards
Deadlock
A permanent blocking of a set of processes that either compete for system resources or communicate with each other.
2
New cards
Necessary Conditions for Deadlock
The four necessary conditions are: Mutual Exclusion, Hold and Wait, No Preemption, Circular Wait.
3
New cards
Resource Categories
Two categories: Reusable Resources (not depleted) and Consumable Resources (created and destroyed by processes).
4
New cards
Resource Allocation Graph
A directed graph that shows resource allocation and requests between processes and resources.
5
New cards
Deadlock Prevention
Methods to prevent deadlock by eliminating one of the necessary conditions.
6
New cards
Deadlock Avoidance
Dynamically analyzes resource requests to keep the system in a safe state.
7
New cards
Banker’s Algorithm
A deadlock avoidance strategy that simulates resource allocation before granting requests.
8
New cards
Safe State
A system state where at least one sequence of resource allocations allows all processes to complete without deadlock.
9
New cards
Deadlock Detection
Periodically checks for cycles in the resource allocation graph to find deadlocked processes.
10
New cards
Recovery from Deadlock
Main strategies include aborting deadlocked processes, rolling back processes, preempting resources, or killing processes incrementally.
11
New cards
Starvation
A process is indefinitely delayed due to other processes always being given priority for resources.
12
New cards
Dining Philosophers Problem
Illustrates issues of mutual exclusion, deadlock, and starvation in concurrent systems.
13
New cards
UNIX Concurrency Mechanisms
Includes pipes, messages, shared memory, signals, and semaphores for interprocess communication (IPC).
14
New cards
Real-Time Signals in Linux
RT signals differ by priority order, queuing, and can pass values alongside signals.
15
New cards
Spinlocks
Locks that cause a thread to wait in a loop while checking availability; effective for short critical sections.
16
New cards
Atomic Operations
Operations executed without interruption, crucial for preventing race conditions.
17
New cards
Memory Barriers
Instructions that enforce the order of memory operations for correct synchronization.
18
New cards
RCU (Read-Copy-Update)
A synchronization mechanism allowing multiple readers and one writer to access shared data concurrently.
19
New cards
Priority Inversion
When a lower-priority process holds a resource needed by a higher-priority process, causing the latter to wait.
20
New cards
Deadlock vs. Livelock
Deadlock: permanently blocked processes; Livelock: processes constantly changing states without progress.
21
New cards
Deadlock Prevention: No Preemption
Allow resources to be forcibly taken from a process to avoid deadlock.
22
New cards
Deadlock Prevention: Circular Wait
Impose a linear ordering of resource requests to prevent circular wait.
23
New cards
Deadlock Detection Algorithm
Steps to identify deadlocked processes by marking unmarked processes and checking resource availability.
24
New cards
Deadlock Recovery: Process Termination
Approaches include aborting all deadlocked processes or doing so incrementally.
25
New cards
Deadlock Recovery: Resource Preemption
Forcibly taking resources from processes to break deadlocks.
26
New cards
Deadlock in Real-World Systems
Example includes traffic deadlocks at intersections; solutions involve traffic management rules.
27
New cards
Deadlock in Databases
Handled by periodic checks for cycles in the wait-for graph and rolling back transactions to recover.
28
New cards
Deadlock in Distributed Systems
Challenges include lacking global state information and communication delays impacting detection.
29
New cards
Summary of Chapter 6
Key takeaways include deadlock definitions, necessary conditions, strategies, and real-world implications.