Bird
Raised Fist0
Operating Systemsknowledge~5 mins

Priority scheduling in Operating Systems - Cheat Sheet & Quick Revision

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What is Priority Scheduling in operating systems?
Priority Scheduling is a method where each process is assigned a priority. The CPU is allocated to the process with the highest priority first.
Click to reveal answer
beginner
How does Priority Scheduling decide which process runs next?
It selects the process with the highest priority to run next. If two processes have the same priority, other criteria like arrival time may be used.
Click to reveal answer
intermediate
What is the difference between preemptive and non-preemptive Priority Scheduling?
In preemptive Priority Scheduling, a running process can be stopped if a higher priority process arrives. In non-preemptive, the running process continues until it finishes or blocks.
Click to reveal answer
intermediate
What problem can occur in Priority Scheduling and how is it solved?
The problem is starvation, where low priority processes may never get CPU time. It can be solved by aging, which gradually increases the priority of waiting processes.
Click to reveal answer
beginner
Give a real-life example that explains Priority Scheduling.
Imagine a hospital emergency room where patients with more serious conditions (higher priority) are treated before those with minor injuries, regardless of arrival time.
Click to reveal answer
In Priority Scheduling, which process is selected to run first?
AThe process that arrived first
BThe process with the shortest burst time
CThe process with the highest priority
DThe process with the lowest priority
What happens in preemptive Priority Scheduling when a higher priority process arrives?
AThe current process is stopped and the higher priority process runs
BThe system crashes
CThe new process waits in the queue
DThe current process continues until it finishes
What is starvation in Priority Scheduling?
AWhen low priority processes never get CPU time
BWhen high priority processes wait too long
CWhen all processes get equal CPU time
DWhen the CPU is idle
Which technique helps prevent starvation in Priority Scheduling?
AFirst Come First Serve
BRound Robin
CShortest Job First
DAging
In non-preemptive Priority Scheduling, when does the CPU switch to another process?
AImmediately when a higher priority process arrives
BOnly when the current process finishes or blocks
CAfter a fixed time slice
DNever
Explain how Priority Scheduling works and the difference between preemptive and non-preemptive types.
Think about how the CPU chooses which process to run and when it can switch.
You got /4 concepts.
    Describe the problem of starvation in Priority Scheduling and how aging helps solve it.
    Consider what happens to processes with low priority if higher priority ones keep coming.
    You got /3 concepts.

      Practice

      (1/5)
      1. What does priority scheduling in operating systems primarily use to decide which process runs first?
      easy
      A. The time each process has already run
      B. The importance level assigned to each process
      C. The size of the process in memory
      D. The order in which processes arrive

      Solution

      1. Step 1: Understand priority scheduling basics

        Priority scheduling chooses processes based on their assigned importance or priority level.
      2. Step 2: Compare with other scheduling criteria

        Unlike first-come-first-served or shortest job first, priority scheduling uses priority, not arrival time or size.
      3. Final Answer:

        The importance level assigned to each process -> Option B
      4. Quick Check:

        Priority scheduling = importance level [OK]
      Hint: Remember: priority means importance, not arrival time [OK]
      Common Mistakes:
      • Confusing priority with arrival order
      • Thinking process size affects scheduling
      • Assuming time already run decides priority
      2. Which of the following is the correct way to describe a preemptive priority scheduling system?
      easy
      A. A system that ignores priority and runs processes randomly
      B. A system where processes run to completion without interruption
      C. A system that schedules processes based on their arrival time only
      D. A system where a running process can be interrupted if a higher priority process arrives

      Solution

      1. Step 1: Define preemptive scheduling

        Preemptive scheduling allows interruption of a running process if a more important one arrives.
      2. Step 2: Match with priority scheduling

        In priority scheduling, preemptive means higher priority processes can interrupt lower priority ones.
      3. Final Answer:

        A system where a running process can be interrupted if a higher priority process arrives -> Option D
      4. Quick Check:

        Preemptive priority = interrupt for higher priority [OK]
      Hint: Preemptive means interrupt if higher priority comes [OK]
      Common Mistakes:
      • Confusing preemptive with non-preemptive
      • Thinking processes always run to completion
      • Ignoring priority in scheduling decisions
      3. Consider three processes with priorities: P1=2, P2=1, P3=3 (1 is highest priority). If all arrive at the same time, which order will they be scheduled in a non-preemptive priority scheduling?
      medium
      A. P3, P1, P2
      B. P1, P2, P3
      C. P2, P1, P3
      D. P1, P3, P2

      Solution

      1. Step 1: Identify priority order

        Priority 1 is highest, so P2 (priority 1) runs first, then P1 (2), then P3 (3).
      2. Step 2: Apply non-preemptive scheduling

        Since all arrive together, processes run fully in priority order without interruption.
      3. Final Answer:

        P2, P1, P3 -> Option C
      4. Quick Check:

        Lower number = higher priority, run in that order [OK]
      Hint: Lower priority number runs first in non-preemptive [OK]
      Common Mistakes:
      • Mixing priority numbers with arrival order
      • Assuming preemption changes order here
      • Confusing priority 1 as lowest priority
      4. A priority scheduling system is implemented but processes with lower priority sometimes run before higher priority ones. What is the most likely cause?
      medium
      A. The system is using non-preemptive scheduling and a low priority process started first
      B. The priority numbers are assigned incorrectly with higher numbers meaning higher priority
      C. The system is ignoring arrival times completely
      D. The CPU is idle and no processes are running

      Solution

      1. Step 1: Understand non-preemptive behavior

        In non-preemptive priority scheduling, once a process starts, it runs to completion even if a higher priority process arrives later.
      2. Step 2: Explain why lower priority runs first

        If a low priority process starts first, it will finish before the higher priority process can run.
      3. Final Answer:

        The system is using non-preemptive scheduling and a low priority process started first -> Option A
      4. Quick Check:

        Non-preemptive lets running process finish first [OK]
      Hint: Non-preemptive means no interruption once started [OK]
      Common Mistakes:
      • Assuming priority numbers are reversed
      • Ignoring scheduling type (preemptive vs non-preemptive)
      • Thinking arrival time is always ignored
      5. You have four processes arriving at different times with priorities: P1(2, arrives at 0s), P2(1, arrives at 1s), P3(3, arrives at 2s), P4(1, arrives at 3s). Using preemptive priority scheduling, which process runs at time 3 seconds?
      hard
      A. P2
      B. P4
      C. P1
      D. P3

      Solution

      1. Step 1: Track process arrivals and priorities

        At 0s: P1(2) starts. At 1s: P2(1) arrives and preempts P1 since higher priority (lower number). At 2s: P3(3) arrives, lower priority than P2(1), so P2 continues. At 3s: P4(1) arrives, same priority as running P2.
      2. Step 2: Determine which process runs at 3s

        In preemptive priority scheduling, preemption occurs only if a strictly higher priority process arrives. Since P4 has the same priority (1) as P2, P2 is not preempted and continues running at time 3s.
      3. Final Answer:

        P2 -> Option A
      4. Quick Check:

        Preempt only for higher priority; same priority continues [OK]
      Hint: Preempt only if strictly higher priority [OK]
      Common Mistakes:
      • Thinking same priority causes preemption
      • Assuming new arrivals always preempt
      • Confusing tie-breaker rules (usually FCFS for same priority)