Beyond IO bound tasks, there's also a general quality argument behind rewarding sleepers:
Lighter, leaner tasks get an advantage. They run less and subsequently sleep more.
Tasks that do intelligent multi-threading with a nice, parallel set of tasks get an advantage too.
CPU hogs that slow down the desktop and eat battery like the end of the world is nigh should take a back seat compared to ligher, friendlier, 'more interactive' tasks.
So the Linux scheduler always tried to reward tasks that are more judicious with CPU resources. An app can get 10% snappier by using 5% less CPU time.
Copyright © 2017, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds