M�NCHEN (ue) - Im internationalen Wettbewerb um einen Durchbruch bei der Mikrokernel-Technik haben deutsche Wissenschaftler einen beachtlichen Erfolg erzielt. Einer Forschergruppe der GMD aus Sankt Augustin bei Bonn und der Technischen Universit�t Dresden (TUD) gelang es, Linux ohne gr��ere Ver�nderungen auf dem Kern "L4" von der GMD laufen zu lassen. Dabei soll es sich um den derzeit kleinsten und schnellsten Mikrokernel der Welt handeln, an dem IBM nun Interesse angemeldet hat.
Gr��ter Konkurrent zu L4 ist eine Echtzeitvariante des Kernels "Mach", der in seiner urspr�nglichen Form an der Carnegie Mellon University entwickelt wurde. Mit ihm experimentierte zum Beispiel die Open Software Foundation (OSF), bis sie die Arbeit an einem Mach-Kernel f�r OSF/1 mangels Interesse der Konsortiums-Mitglieder Mitte letzten Jahres einstellte. Auch IBM kann auf langj�hrige Erfahrungen mit Mach verweisen. Doch ein bis Anfang dieses Jahres geplanter Mach-3-Kernel, auf dem die seinerzeit noch als OS-Personalities bezeichneten Betriebssystemkomponenten von OS/400, OS/2 und Linux laufen sollten, ist bislang nicht fertiggestellt. Einen gewissen Erfolg brachten Big Blues Experimente mit Mach f�r Multimedia-Anwendungen. Eine daraus resultierende Realtime-Variante des Kerns erwies sich jedoch als zu langsam, um die Technik zum weltweiten Erfolg zu f�hren.
Big Blues Mach-Version, ebenso wie der Echtzeitkern "Chorus" von der franz�sischen Chorus Systems, seien zu m�chtig und nicht flexibel genug, hei�t es entsprechend bei den deutschen Wissenschaftlern Jochen Liedtke, GMD-Mitarbeiter und L4-Erfinder, sowie dessen Entwicklungspartner Hermann H�rtig, Leiter des Lehrstuhls f�r Betriebssysteme an der TU Dresden. Unterschiedlicher Auffassung waren die konkurrierenden Forschergruppen zum Beispiel darin, ob und welche Betriebssystemfunktionen in den Mikrokernel integriert werden sollen. Um beispielsweise Linux auf Mach laufen zu lassen, hatte die OSF das Betriebssystem "ge�ffnet" und einige Ger�tetreiber in den Mikrokern integriert. Das Resultat war, da� Mach bis heute eine Gr��e von rund 300 Kilobyte aufweist.
Das deutsche Team ist dagegen der Ansicht, da� eine weitgehende Flexibilit�t zwischen Microkernel, Betriebssystem oder Anwendung nur dann erreicht werden kann, wenn alle Komponenten m�glichst unver�ndert bleiben. Au�erdem gilt: Je gr��er der Kern wird, desto mehr Cache ben�tigt er, so da� die f�r eine Anwendung ben�tigte Performance sinkt. Zur Portierung hat man deshalb den lediglich 12 Kilobyte gro�en Kern L4 �berhaupt nicht anger�hrt, Linux wurde lediglich in seinen hardwareabh�ngigen Bereichen (Interrupt, Clock, Process, Pagetables) und den Systemcalls f�r den Mikrokern modifiziert (siehe Grafik).
Unver�nderte und modifizierte Bereiche des Linux-Kerns werden von H�rtig unter dem neuen Begriff "Linux-Kernel-Server" zusammengefa�t. Prinzipiell lie�e sich ein vergleichbarer Server auch f�r andere Betriebssysteme schaffen, hei�t es bei den Wissenschaftlern. Vollst�ndig aus dem Linux-Kern ausgelagert wurde die Hauptspeicherverwaltung (externe Pager), die sich im Modell der Dresdener zwischen dem Server und dem Mikrokernel L4 befindet. Entscheidend bei dieser Konstellation ist, da� weder Server noch Pager im Hardware-Kernel-Mode als Betriebssystem laufen, also direkt auf die Hardware zugreifen, sondern als Benutzerprogramme (User-Level) auf den Mikrokernel zugreifen.
L4 selbst bietet typische Mikrokernelfunktionen wie die M�glichkeit, Adre�r�ume zu bilden, in denen jeweils mehrere Threads (parallele Prozesse) ablaufen. Derartige Operationen sind zum Beispiel die von den Pagern empfangenen Aufrufe bez�glich des ben�tigten Speicherraums. Die Geschwindigkeit, mit der die einzelnen Threads untereinander kommunizieren, gilt dabei als die kritische Kenngr��e unter den Mikrokernen. Bei Performance-abh�ngigen Prozessen wie die Kommunikation zwischen gesch�tzten Adre�r�umen sei L4 um den Faktor 20 schneller als Mach, stellt Liedtke f�r seinen Mikrokernel fest.
Gr��e und Schnelligkeit von L4 sowie die M�glichkeit, den Linux-Server ohne gr��ere Modifikationen als Benutzerprogramm auf dem Mikrokernel laufen zu lassen, sollen der Linux-L4-L�sung ein breitgef�chertes Einsatzspektrum �ffnen. Die Entwicklung von Anwendungsservern bietet sich laut Liedtke besonders im Multimedia-Segment und bei Echtzeit-Applikationen an. Es reiche nicht, "Performance zu haben" - vielmehr m�sse einer Anwendung die ben�tigte Leistung etwa beim Scheduling (Verteilung von CPU-Ressourcen) garantiert werden. Diese f�r Multimedia erforderlichen Mechanismen bieten heutige Betriebssysteme nicht, so Liedtke. Statt dessen m��ten applikationsspezifische Strategien bez�glich der Hauptspeicherzuteilung realisiert werden.
Auf diesem Gebiet sind die Dresdener aktiv. H�rtig spricht von zwei "Kulturen", die nebeneinander auf einem Rechner laufen: Parallel zu Linux als Arbeitsplatz- und Time-Sharing-System sollen Multimediakomponenten gebaut werden, die als Subsystem auf dem Mikrokernel laufen und alle Ressourcen erhalten, die sie ben�tigen beziehungsweise reserviert haben. Die verbleibende Leistung soll dann Linux zur Verf�gung stehen. In Richtung Fertigungsindustrie zielt ein weiteres Projekt der Dresdener, bei dem ein �ber L4 und verschiedene Subsysteme gesteuerter Roboter mit einem m�glichst gro�en neuronalen Netz ausgestattet werden soll.
Besonders gute Voraussetzungen bietet L4 auch f�r den Einsatz in Smartcards, wo der Kern aufgrund seines geringen Umfangs relativ viel Platz f�r gr��ere Anwendugsprogramme l��t. �hnliches gilt laut H�rtig f�r den j�ngst von einigen Herstellern propagierten Network Computer (NC), der prinzipiell mit L4 starten k�nnte, um dann die gew�nschte Betriebssystem-Funktionalit�t aus dem Netz zu laden.
Im Bereich der Embedded Systems konkurriere L4 zwar mit einigen, bereits am Markt verf�gbaren Realtime-Kernen, im Gegensatz zu diesen sei das GMD-Produkt jedoch offen und b�te Durchg�ngigkeit zu verschiedenen Anwendungs- und Betriebssystem-Servern.
Diese L4-Eigenschaften scheinen inzwischen auch das Interesse bei IBM geweckt zu haben. Ob Big Blue mit L4 ein neues Konzept f�r die urspr�nglich geplanten OS-Personalities auflegen oder Mach bei den Echtzeitkernen abl�sen will, war bis Redaktionsschlu� nicht zu erfahren. Fest steht, da� Liedtke kurz nach Bekanntwerden der Linux-Portierung auf L4 einer Einladung von IBM zur Kooperation in deren New Yorker Labor gefolgt ist. �hnliches Interesse an der deutschen Entwicklung w�nscht sich H�rtig nun auch vom s�chsischen Wissenschaftsministerium.
Um seinem Namen gerecht zu werden, sollte ein Mikrokernel im Idealfall nur drei Eigenschaften besitzen: Er mu� Adre�r�ume bilden k�nnen, die Inter-Process-Communication (IPC) zwischen diesen Adre�r�umen beherrschen und Basisfunktionen f�r das Scheduling anbieten. Einen Durchbruch bei dieser Technik erzielten die Forscher der Carnegie Mellon University, die mit "Mach" zun�chst die Pager (Speicherverwaltung) und sp�ter das Interupt-Handling vollst�ndig aus den bis dahin monolithischen Systemen herausl�sten. Die getrennten Bereiche lie� man als Benutzerprogramme beziehungsweise Anwendungsserver auf dem Mikrokernel laufen. Obwohl die Kerne nach und nach schlanker wurden, trat eine Stagnation bei dem wohl wichtigsten Mechanismus ein, der IPC-Performance. In der Folge wurden ausgelagerte Serverfunktionen und Ger�tetreiber wieder in den Kernel reintegriert. Damit lie� sich zwar Performance gewinnen, das Konzept widerspricht jedoch dem Grundgedanken eines Mikrokerns. Bei der GMD in Bonn scheint man das Performance-Problem mit "L4" in den Griff bekommen zu haben - ohne den Kernel wieder aufzubl�hen. Nur ein schlanker Kern, so die Meinung dort, wird k�nftig gen�gend Flexibilit�t f�r ein breites Anwendungsspektrum bieten.
Stefan Ueberhorst