I think this is the way. sysinit is getting kind of big, though. Its purpose is to (1) initialize the system and (2) provide essential services, which tbh may be separate jobs. The essential services it provides are:

- Process manager

- Loader & driver loader

- Memory manager

- Physical memory manager

- Bootstrap filesystem

Some of these can probably be removed to separate daemons

Reply to this note

Please Login to reply.

Discussion

I think I should generally just redesign the system with completely managed capabilities -- for user process. Drivers can manage their own caps (if they want).

Still working on designing the user process environment, but this is a crucial detail which will unblock lots of stuff once solved.