Define Microkernel plan
Closed this issue · 3 comments
jamesaorson commented
As stated here, we need to consider this:
As a microkernel must allow building arbitrary operating system services on top, it must provide some core functionality. At a minimum, this includes:
- some mechanisms for dealing with address spaces, required for managing memory protection - some execution abstraction to manage CPU allocation, typically threads or scheduler activations - inter-process communication, required to invoke servers running in their own address spaces
This will eventually include moving all of our drivers and libraries out of the kernel.
Kfeavel commented
Kfeavel commented
A rough draft of what we need to do to begin this transition has been created. I'll add the points James introduced in a moment.
https://github.com/panix-os-dev-team/Panix/wiki/%CE%BCKernel-Plan
Kfeavel commented
This is basically done. The plan is to complete WYOOS and then transition everything into userland once inter-process communication is done.