Operating Systems Concepts - Engineering

Q1:

Which of the following statements is false?

A a process scheduling algorithm is preemptive if the CPU can be forcibly removed from a process

B time sharing systems generally use preemptive CPU scheduling

C response time are more predictable in preemptive systems than in non preemptive systems

D real time systems generally use non-preemptive CPU scheduling

E None of the above

ANS:D - real time systems generally use non-preemptive CPU scheduling

The statement "response time are more predictable in preemptive systems than in non preemptive systems" is false.

In preemptive scheduling, the operating system may interrupt a running process and allocate the CPU to another process with higher priority. This can lead to shorter response times for high-priority processes, but longer response times for low-priority processes that are repeatedly interrupted. Therefore, response times are less predictable in preemptive systems, as they depend on the priority of processes and the frequency of context switches.

In contrast, in non-preemptive scheduling, a running process will continue to execute until it completes, blocks, or voluntarily yields the CPU. This results in more predictable response times for each process but can lead to longer response times for high-priority processes that are waiting for low-priority processes to complete.

Therefore, the statement that "response times are more predictable in preemptive systems than in non-preemptive systems" is false.