One interesting thing this (dated but still very relevant) article misses is timer coalescing.<p>Most modern operating systems try to merge a bunch of timer actions into a single wake/interrupt. Not only does this leave more time for other work to be done in the normal case of a loaded CPU, but if there's less demand, it provides way more opportunity for the CPU to fall into a lower power state.<p>Some timer APIs will let you specify how accurate you want your timer to be. Often enough, a few tens or hundreds of milliseconds doesn't really matter for your use case, but that's AEONS in CPU time!
"A SPNT OS has no real need of a scheduler."<p>I would rather disagree: <a href="https://en.wikipedia.org/wiki/Computer_multitasking" rel="nofollow">https://en.wikipedia.org/wiki/Computer_multitasking</a>. OS in the most of the cases needs to be interactive, what would be impossible without multitasking. Multitasking would not be possible without a scheduler. So, we would not swap the active task and we would be stuck with the current task forever (or until it finishes), without even the ability to interrupt it.