Hey all
I'm wondering if anyone has opinions on how much a microkernel should rely on a global registry vs "root tasks just pass down anonymous capabilities/objects to child tasks".
My current project basically has a global registry for IPC endpoints, but I'm planning on pulling that out into userspace soon, and of course I also need to think carefully about permissions.
I can make it "you can discover anything, but you still need the cap to it" or I can make it so that registering an IPC endpoint implies being able to talk to it.
Currently only my ring0 modules can directly talk to the registry, but I'm pondering how to handle this when I migrate to ring3 tasks.
Anyone got some thoughts?