[Arm-netbook] microkernels

Luke Kenneth Casson Leighton lkcl at lkcl.net
Tue Dec 11 03:05:45 GMT 2018


On Tue, Dec 11, 2018 at 2:12 AM Christopher Havel <laserhawk64 at gmail.com> wrote:

> So, as I (poorly) understand it, the idea of a "microkernel" is that each
> process/thread/application (I'm not quite sure which) gets its own kernel,
> sort of, and that this kernel is somewhat modular in that it only provides
> what functionality the application needs from it.

 not quite: a microkernel provides the absolute absolute minimum
functionality to manage tasks and communication _between_ tasks.  as a
result they're typically extremely small, and usually are the only
place where assembly code is needed.

 L4ka ports of the linux kernel basically turn the entire linux
"kernel" effectively into a user-space-like "application".  you now
have *three* levels: L4ka microkernel, linux "kernel", GNU/Linux OS.

 the GNU/Hurd's microkernel inter-process communication is actually
sufficiently abstracted such that processes may actually be run
*off-machine*, by dropping in a full-on network-based RPC (remote
procedure call) mechanism.  hypothetically this would allow full
migration of processes from one machine to another, without any
interruption in the running of the user applications as they migrate.

l.



More information about the arm-netbook mailing list