Skip to content

Comment on Correctly implementing a spinlock in Modern C++parent

Comments

No. You can configure the kernel run with a different scheduling policy and pretty much prevent preemption. You can even move IO interrupt handlers to other cores to really ensure you have the core.

OK. And who does that, when and why? Can you point to some practical REAL (= existing) examples?

In general, multi-threaded realtime audio software. Example: https://github.com/supercollider/supercollider/tree/develop/...

I've seen things like that in industrial control systems. I think some high-performance networking setups also do things like that, doing almost everything in user-space, actively polling for packets from the hardware.

Another example are OS-bypassing workloads which are tail-latency sensitive. They will prefer to avoid any OS involvement and take charge of everything in user space.

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.