> > Just to disturb an urban legend: Windows NT is *not* based on Mach
> > technology.
[...]
> Ignoring these people, one can just look under the hood of NT:  it is clear
> that many of the techniques developed by the CMU Mach group are present.
> I feel that once you have taken a peek, it will be hard to ignore its
> microkernel heritage.

I don't argue whether NT is a microkernel system, and it may be
"influenced" by Mach. It's just the claim that "based on" that I think
is totally incorrect. I doubt that a single line of Mach is found in
the Windows NT kernel. To quote Helen Custer, from "Inside Window NT"

# In reality, client/server systems fall within a spectrum, some doing
# very little work in kernel mode and others doing more. For example,
# the Carnegie Mellon University Mach operating system, a contemporary
# example of the client/server microkernel architecture, implements a
# minimal kernel that comprises thread scheduling, message passing,
# virtual memory, and device drivers. Everything else, including
# various APIs, file systems, and networking, runs in user
# mode. However, commercial implementations of the Mach microkernel
# operating system typically run at least all file system, networking,
# and memory management code in kernel mode. The reason is simple: the
# pure microkernel design is commercially impractical because it is
# too computationally expensive--that is, it's too slow.

This appears to be the first mentioning of Mach, and it does *not*
claim that Windows NT is "based on" Mach. This is unlike the OSF
system, which I think does indeed incorporate Mach source code.

The closest claim in Microsofts own documentation I could find was

http://www.microsoft.com/TechNet/winnt/ntwrkstn/prodfact/ntengsci.asp

They say

# Modern operating systems, such as Windows NT, run in a privileged
# processor mode known as kernel-mode. The design is based on a
# microkernel*17 model.

Footnote 17 says

# The microkernel design was a part of the Mach operating system
# developed at Carnegie Mellon. The Mach microkernel is very efficient
# when performing critical tasks.

Another quote is in

http://www.microsoft.com/TechNet/winnt/windowsn.asp

# The technique that Windows NT uses is called a "microkernel" and was
# influenced by the Mach microkernel developed at Carnegie Mellon
# University.

So while Microsoft thinks NT is a microkernel system, and while the
microkernel idea was pioneered in CMU Mach, NT is hardly "based on"
the Mach. This is like says "the German constitution is based on the
British constitution", just because the British constitution was
first. Can you give a single example for a Mach system interface that
is also found in Windows NT (with similar operation names, and
parameter types)?

Regards,
Martin

Reply via email to