Re: Proposal: Delegating Exceptions from VS-mode or VU-mode to U-mode


David Horner
 


On 2020-09-19 5:29 a.m., Gernot wrote:
On 19 Sep 2020, at 15:53, Andrew Waterman <andrew@...> wrote:

The N extension is effectively deprecated. We don’t see sufficient demand for user-level interrupts in managed/Unix-like environments to pursue that approach at this time.

That’s a real concern, and I seem to have missed any discussion about this. I suspect that this also reflects a confusion resulting from the use of “Unix-like environments”, which seems to get applied to any protected-mode OS.

User-level drivers are a core properties of (well-designed) microkernels, and microkernels are pretty much the only choice for safety- and security-critical systems, and the only kind of OS that is feasible to prove correct (see seL4).

And if you run drivers in user mode, then being able to route interrupts directly to the user-level handlers without invoking the kernel would seem to pretty much eliminate the performance disadvantage microkernels have compared to Linux.

I don't know if these developments will address your concerns, but I see the synergy of these two task groups, Fast-interrupts and Code Size Reduction, as potentially reducing the overhead for M-mode to initiate and manage drivers running in U-mode.

I invite you to join these groups to contribute in directing their ability to support this important segment of the ecosystem.

In fact, my immediate reaction seeing this extension was “yeah!”.

As I have aligned aspirations,I'm hoping that your response will, along with mine,  be "yeah!" :

       that running micro-kernel (and other like) components in U-mode will be a first class supported reality obtained through these initiatives.


Gernot

Join tech-privileged@lists.riscv.org to automatically receive all group messages.