MockExams

Deadlock Detection & Recovery Strategies

AI draft, not yet reviewedAbout 1 minutes

Idea in plain words

Wait-For Graph (WFG) detection for single instance per resource type

Exam tip

High-yield exam topic (High).

Explanation

The OS allows deadlock to occur, periodically invokes detection, and breaks the deadlock via preemption or aborts.

Key points

  • Multiple instance detection uses Available, Allocation, and Request matrices
  • Recovery Option 1: Process termination (abort all or abort one-by-one by lowest cost/priority)
  • Recovery Option 2: Resource preemption with checkpoint rollback; must guard against starvation

Example

Example

Aborting lowest-priority background batch jobs while preserving user interactive foreground sessions.

Code examples

// Deadlock Recovery: Select Victim Process with Minimum Penalty Cost
int selectVictimProcess(const vector<int>& cpuTimeSpent, const vector<int>& priority) {
    int victim = -1, minScore = 1e9;
    for (size_t i = 0; i < cpuTimeSpent.size(); i++) {
        int penalty = cpuTimeSpent[i] + priority[i] * 10;
        if (penalty < minScore) { minScore = penalty; victim = i; }
    }
    return victim;
}

Exam questions

  • Describe the methods used for recovering from a deadlock situation.
  • What is starvation in deadlock preemption, and how can the aging technique prevent it?

BIT253CO

Switch Course

On this page

Past Exam Questions

Not asked in past exams yet

This topic hasn't appeared in previous exam papers.

Search BIT253CO

Reading

Theme
Reading mode
Text size
Default
Font
Line width
Line spacing