On Mon, Apr 16, 2012 at 10:56 AM, Jonathan S. Shapiro <[email protected]>wrote:

> Count either instructions or unit numbers. I'm not sure about IOS devices,
> but every other mobile device is running a capability microkernel under
> those OS's. Most of those qualify as "end user systems".
>

There is no reason to debate facts, and this is quite a large tangent from
where we started, but I'm curious about what facts lead to our differing
view of this situation.

My definition of Microkernel <http://en.wikipedia.org/wiki/Microkernel> is
"hardware drivers live in hardware-protected-spaces and communicate via
IPC", such as pure Mach 3.0, (some parts of) NT 3.51, QNX, QNX Neutrino,
and more recently hardware-enforced applications of L4.

AFAIK...

...NT 4.0+ and Nextstep/openstep/macOS-darwin admitted defeat to drivers
outside ring0 and pulled them into the macrokernel for performance.

.... which means all desktop WinNT4/Vista/W7, OSX/Mach-BSD, plus
smartphones running Android/Linux and iOS/Darwin all load drivers into the
privileged space (ring0 equivilent) and are effectively macro- kernels....
this is the source of my comment that "most" systems are macrokernels.

....non-smartphones mostly don't have an MMUs, and thus they can't be
evaluated as a micro-or-macro kernel based on this idea of MMU protection
-- they are a single-address-space non-protected embedded system (basically
one giant macrokernel system).

....QNX and QNX Neutrino are among the commercial MMU protected
true-microkernels, and I beileve they are
Single-Address-Space-Operating-Systems.

Some quick searching found this research project experimenting with an L4
version of 
Darwin<http://www.ssrg.nicta.com.au/publications/papers/Lee_Gray_06.pdf>,
which used an L4 hypervisor to offer microkernel style protections, but a
cursory glance looks like they took the QNX SASOS route.. and it's just a
research project.

I'm curious what body of "every other mobile device" have hardware isolated
driver processes? Or are we talking about a different definition of
microkernel?


> I can also make a strong case that every direct-on-hardware virtual
> machine solution is a microkernel. That's certainly a fair description of
> Hyper-V.
>

What is the definition of microkernel that reaches this conclusion?
_______________________________________________
bitc-dev mailing list
[email protected]
http://www.coyotos.org/mailman/listinfo/bitc-dev

Reply via email to