The below text is taken from the book : Operating Systems: Internals and Design Principles by William Stallings, 8th edition, page 68.

Scheduling and Resource Management

A key responsibility of the OS is to manage the various resources available to it (main memory space, I/O devices, processors) and to schedule their use by the various active processes. Any resource allocation and scheduling policy must consider three factors:

  • Fairness: Typically, we would like all processes that are competing for the use of a particular resource to be given approximately equal and fair access to that resource. This is especially so for jobs of the same class, that is, jobs of similar demands.

  • Differential responsiveness: On the other hand, the OS may need to discriminate among different classes of jobs with different service requirements. The OS should attempt to make allocation and scheduling decisions to meet the total set of requirements. The OS should also make these decisions dynamically. For example, if a process is waiting for the use of an I/O device, the OS may wish to schedule that process for execution as soon as possible to free up the device for later demands from other processes.

  • Efficiency: The OS should attempt to maximize throughput, minimize response time, and, in the case of time sharing, accommodate as many users as possible. These criteria conflict; finding the right balance for a particular situation is an ongoing problem for OS research.

I cant understand the meaning of Differential Responsiveness, can somebody please explain it to me ?


1 Answer 1


Not every job that a computer has to do has equal importance or urgency.

An example is different I/O devices which work at different speeds. A network interface, for example, generally runs at a much higher bandwidth than a keyboard or mouse, so servicing the network interface would typically be a higher priority task than servicing a keyboard. But, on the other hand, servicing a real-time clock might be even higher priority than those, so that the computer keeps good time.

This is even more critical in real-time systems, where for some computations, a late answer is a wrong answer. An obvious example is software that controls a physical device, such as in a vehicle control system; a late response could mean catastrophe.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.