Registering caps and other objects in a microkernel

Discussions on more advanced topics such as monolithic vs micro-kernels, transactional memory models, and paging vs segmentation should go here. Use this forum to expand and improve the wiki!
Post Reply
GwenCat
Posts: 5
Joined: Fri Oct 02, 2026 9:55 pm
Libera.chat IRC: GwenNelson

Registering caps and other objects in a microkernel

Post by GwenCat »

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?
Post Reply