[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

A metacomment

From: Jonathan S. Shapiro
Subject: A metacomment
Date: Wed, 19 Oct 2005 09:58:00 -0400

In thinking about the discussions about REVOCABLE COPY, I have a
meta-observation. This is not something that I can substantiate

It appears to me that we have found some essential places (storage
allocation, pagers, capserver) where centralization of function is
required. How much centralization, and which function, depends on the
particular microkernel. Some of this centralization (e.g. storage
allocation) seems essential. Some of it is a result of design choices in
the respective microkernels.

As the degree of necessary centralization rises (and I know that the
designs are still evolving), what we are actually achieving is an
increasingly monolithic system design in which a fairly arbitrary
component (the IPC layer) has been placed in supervisor code and the
rest is part of the user-mode system-wide TCB. There may be some
debugging advantages in this, but in my opinion there are no fundamental
structural advantages.

This is my essential *subjective* objection to hierarchy -- it is
unavoidable where it emerges from unalterable qualities of the
underlying hardware, but undesirable elsewhere. I need to write about
this more carefully, as I have promised already to do.

I suggest that one good test of any microkernel is how well it allows us
to *factor* designs above the kernel, so that dependency on centralized
design elements is reduced and interdependency among components is
clearly and cleanly structured. The emphasis on microkernel IPC
performance was historically important, but it should not be allowed to
distract us from the system structuring advantages that are the real
motivation for using a microkernel.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]