3 ms·
In the modern, multicore world, it might make sense to make all system calls asynchronous, sort of like io_uring: you make one userspace call (which might or mi
by voidmain 5y ago
In the modern, multicore world, it might make sense to make all system calls asynchronous, sort of like io_uring: you make one userspace call (which might or might not switch to kernel mode) to "start" the operation and then later you can wait for one or more to finish. You can construct a blocking call by doing these operations sequentially, batch calls by starting several operations and then waiting, or write an event loop for async programming. And in many cases another core could handle the system calls eliminating context switches. But in this model the only blocking operation is waiting, so "PCLSR-ing" is trivial.