Difficulty: Easy
Correct Answer: Real-time systems generally use non-preemptive CPU scheduling.
Explanation:
Introduction / Context:
CPU scheduling affects responsiveness, predictability, and deadline satisfaction. Preemptive schedulers can interrupt running tasks; non-preemptive schedulers let tasks run until they block or finish. This item asks which statement is false.
Given Data / Assumptions:
Concept / Approach:
Real-time operating systems typically use preemptive, priority-driven schedulers so that higher-priority tasks can preempt lower-priority ones to meet deadlines. Therefore, the claim that real-time systems “generally use non-preemptive” scheduling is false.
Step-by-Step Solution:
Verification / Alternative check:
RTOS documentation (for example, priority-based preemptive schedulers in QNX, VxWorks, FreeRTOS) confirms heavy reliance on preemption.
Why Other Options Are Wrong:
a, b, c align with standard definitions and practice. e is incorrect because there is a false statement (d).
Common Pitfalls:
Confusing “non-preemptive real-time” with cooperative systems; while possible, it is not the general practice for hard real-time guarantees.
Final Answer:
Real-time systems generally use non-preemptive CPU scheduling.
Discussion & Comments