Документ взят из кэша поисковой машины. Адрес оригинального документа : http://crydee.sai.msu.ru/ftproot/pub/misc/doc/microkernels
Дата изменения: Mon Oct 28 11:32:30 1996
Дата индексирования: Sun Apr 10 04:36:40 2016
Кодировка:

Поисковые слова: http astrokuban.info astrokuban
From ns.itep.ru!CERN.ch!EU.net!news.mathworks.com!fu-berlin.de!informatik.tu-muenchen.de!lrz-muenchen.de!uni-erlangen.de!winx03!wuff.mayn.de!wuff.franken.de!news.cs.uni-magdeburg.de!dali.cs.uni-magdeburg.de!RRZ.Uni-Koeln.DE!nntp.gmd.de!urk!veit Mon Oct 28 11:32:30 1996
Path: ns.itep.ru!CERN.ch!EU.net!news.mathworks.com!fu-berlin.de!informatik.tu-muenchen.de!lrz-muenchen.de!uni-erlangen.de!winx03!wuff.mayn.de!wuff.franken.de!news.cs.uni-magdeburg.de!dali.cs.uni-magdeburg.de!RRZ.Uni-Koeln.DE!nntp.gmd.de!urk!veit
From: veit@urk.gmd.de (Holger Veit)
Newsgroups: comp.os.os2.beta
Subject: Re: Should we hope in mks?
Date: 24 Oct 1996 22:57:16 GMT
Organization: GMD - German National Research Center for Information Technology
Lines: 89
Message-ID: <54os8c$fbd@omega.gmd.de>
References: <53lhlt$318g@news-s01.ny.us.ibm.net>
X-Newsreader: Tin 1.1 PL5

sutti@ibm.net wrote:
[...]
: Are we supposed to HOPE that the next version of OS/2 be mk-based?
: I think not.
: I am no IT corporate strategist nor OS engineer, but the CONCEPT itself of
: microkernel does not seem to be a realistic basis for the future of a PC OS.
: The advantages of microkernel are substantially;
: - the portability of the rest of the OS ("personality") as such:
: - possibly some better exploitment of SMP;
: - possibly an easier maintenance and updating of the OS.
: The disadvantages are:
: - a layer more of software, with the loss of performance involved.

Your opinion is based on the meanwhile outdated conception what a "microkernel"
is. If the buzzword MK is said, most people mean "Mach" or "Chorus". But
these are 1st generation MKs, based on the idea to take a monolithic (Unix)
kernel and migrate code out of the kernel into user-level servers. In the
research community, this approach has been depraved for quite some time
as it turned out that the so called microkernel resulting from that is
still highly monolithic. What you gain by throwing out functions out of
the core, you lose by an increase of communication and interfacing code.
In the Mach kernel, a considerable amount of time and space is spent to implant
SMP mutexes into a basically non-reentrant standard Unix kernel. It is not
surprising that the "microkernel" is as micro as 500K, and needs filesystem,
process, UNIX emulation, and pager satellites around it to work at all. The
original BSD kernel can be had in approximately the same size, and is much
less demanding in resources. Noone would seriously say so, but a modern Linux
kernel, with all parts that can be made "loadable" being made loadable, is
closer to a microkernel than a Mach kernel.

The current state of the (research) art are microkernels of the second
generation, like the L3 and L4 kernels (attention advertising: available
from GMD ;-)) of Jochen Liedke. The new approach is not to strip down an
existing kernel, but build a kernel from the bottom up. In order to get
performance, this core needs to be even optimized to the target processor
(even 486 and Pentium result in different code). The core of the kernel
is just a few K bytes with a context switch overhead which is close to
the theoretic limit of the processor (what Mach would never reach by a
factor of 10 even if it were handcoded in assembler), and is complete
enough to allow fast IPC to run functional servers. Interestingly, Jochen
is currently on a one year research stay at the Watson research Center
of IBM...

: Now, from the user's point of view, a monolythic OS, finely tuned and highly
: optimised for a given hardware (even more with all the significant parts handcoded
: in assembler), is undeniably and intrinsically superior, as he would not mind about
: making like easier for the programmers.

The point is not that a monolithic kernel is so highly optimized - from
what I have seen so far, OS/2 is as much written in C as a typical Unix
kernel (90-95%) - but that 1st generation microkernels are so lousy.

: If "OS/2 for Powerpc" had been recoded from scratch for the powerpc, it would
: have probably been ready an year sooner, and would have been performing well
: enough to allow emulation to work well enough to compete with 486s...

You would get much more than just 486 emulation speed out of a modern PPC
(610,620); the 601/603s which you find in Apple's PowerMacs are lowest
possible end and still suffer from the backward compatibility to the POWER
architecture. The newer PPCs are superscalar from the ground up and will
leave PPros far behind in serious benchmarks (that do not simply profit
from the x86's I and D cache throughput). A more realistic approach is to
bundle multiple PPCs to a system, like in the BeBox hardware and force
excessive multithreading.

IBM's PPC-OS/2 experiment failed for two reasons: hardware was not available
in time as expected (which is more a failure of marketing than a technical
issue), and their 1gen MK approach was unsuitable for scaling and getting
performance out of the system, and they damn know this (at least now).
I don't know how this mythical future OS/2 will look like, but I am pretty
sure that it won't be a recompiled and fine tuned PPC kernel out of
the drawers of yesterday.

BTW: NT is also a 1gen MK, and it is already obvious from the changes
MS was forced to do between 3.51 and 4.0, moving GDI into the kernel to
get at least a glance of performance improvement, that this is dead software.
It is just that hype that associates microkernel=good that only few people
have recognized so far how dead NT is. MS can hack on this until NT Version
7.0, and it won't become better - only hope is that memory will become cheaper
and Intel CPUs will become faster in the same way as they did in the last
few years. And this is rather unlikely.

--
Dr.-Ing. Holger Veit | INTERNET: Holger.Veit@gmd.de
| | / GMD - German National Research | Phone: (+49) 2241 14 2448 or 2039
|__| / Center for Information Technology| Fax: (+49) 2241 14 2242
| | / Schloss Birlinghoven | Beta 3.1.2G of XFree86/OS2:
| |/ D-53754 Sankt Augustin, Germany | ftp.xfree86.org
WWW: http://borneo.gmd.de/~veit/ | /pub/XFree86/beta/OS2