Keep in mind it doesn't magically wake up descheduled tasks. So it's necessary to go through the kernel if the destination task is not currently running on a CPU. The latency in that case will be similar to what we have today.
And in cases where you can guarantee that the destination task is running you can already uses shared memory for low-latency communication today (polling or mwait).
I'm not saying userspace interrupts are useless but they are not as convincing as it seems at first glance. I think more proof of concepts (enabling real applications) and benchmarking are needed to demonstrate the advantages.
And in cases where you can guarantee that the destination task is running you can already uses shared memory for low-latency communication today (polling or mwait).
I'm not saying userspace interrupts are useless but they are not as convincing as it seems at first glance. I think more proof of concepts (enabling real applications) and benchmarking are needed to demonstrate the advantages.