Understanding how linux kernel APIs are designed to do asynchronous concurrent work without futures
I'm a kernel code newbie. I have done a lots of systems programming in user space.
In rust and C++, I have so far used Futures or frameworks like Seastar to perform asynchronous programming.
I would like to understand how linux kernel which I presume is multi-core, handling several interrupts and driving many state machines forward ... how does it do it?
Does linux have it's own asynchronous programming framework like Seastar which allows programmers to do it? Does it have its own task/green-thread framework?