Microsofts Positionierungsunfall nahm eine glueckliche Wende Homogenitaet von Server und Client spricht fuer Windows NT Von Hanns-Martin Meyer*

16.09.1994

Vor dem Wechsel in eine Client-Server-Architektur mit grossen, Mission-critical-Anwendungen, muss die Frage nach dem Betriebssystem auf der Server-Seite geklaert werden. Ein Jahr nach dem ersten Release von Windows NT ist es an der Zeit, die beiden Hauptkonkurrenten im Server-Bereich, Unix und NT, gegenueberzustellen.

Unix und Windows NT sind beides Betriebssysteme fuer die Client- Server-Architektur moderner Praegung. Moderne Client-Server- Architektur heisst dabei, dass am Arbeitsplatz echte Rechner eingesetzt werden, die ueber ein lokales Netz oder leistungsfaehige WANs mit einer weiteren Ebene von Systemen verbunden sind, der Ebene der Server.

Die Arbeitsplatzrechner, meist PCs mit Windows 3.X, werden dabei in erster Linie genutzt, um das User-Interface softwaremaessig abzuwickeln, Standardsoftware zu nutzen und anwendungsneutrale Tools zur Verfuegung zu stellen. Auf den Servern sind in Ergaenzung zum User-Interface abstrakte Anwendungskerne implementiert. Damit ist gemeint, dass diese Anwendungskerne nicht wissen, ueber welche Benutzer-Schnittstelle sie dem Anwender praesentiert werden. Leistungsfaehigkeit, Verfuegbarkeit und Sicherheit der Server entsprechen dabei den Anforderungen der auf dem einzelnen Rechner positionierten Anwendungskerne.

Bisher standen als Betriebssysteme fuer eine solche moderne Client- Server-Architektur ausschliesslich die Unix-Varianten zur Verfuegung. Proprietaere Betriebssysteme unterstuetzen dieses Konzept nicht oder nur unzureichend. Doch seit einem Jahr hat Unix in diesem Bereich Konkurrenz: Windows NT.

Unix: Vom Entwickler fuer den Entwickler

Die verschiedenen Unix-Varianten - das EINE Unix haette OSF/1 einmal werden sollen - verdanken ihr Ueberleben von mehr als 20 Jahren technologischem Fortschritt im Hardwarebereich einem entscheidenden Punkt: Unix wurde im Gegensatz zum damaligen Usus von vornherein fast komplett in einer hoeheren Programmiersprache, in C, geschrieben. Dadurch ist bei einer technologiebedingten Portierung auf eine neue Hardwareplattform lediglich ein sehr kleiner Teil maschinennah zu implementieren, waehrend der groesste Teil des Betriebssystems nur einer Rekompilierung bedarf.

Auch das erst ein Jahr junge Windows NT ist ueberwiegend in C und C++, also nach heutigem Stand der Kunst, implementiert. Die wichtigen technischen Aspekte fuer beide Welten sind:

Unix

- 32 Bit

- Flat-Virtual-Memory-Management

- Multitasking

- Multiuser

- skalierbar ueber SMP

- hoch konfigurierbar

- "Vom Entwickler fuer den Entwickler"

- zeichenorientiertes User-Interface

- GUI mit OSF/Motif realisierbar

- 95 Prozent in C

- hochgradig portabel

Windows NT

- 32 Bit

- Flat-Virtual-Memory-Management

- Multitasking und Multithreading

- Multiuser, aber nicht Multiterminal

- skalierbar ueber SMP

- konfigurierbar

- "Vom Entwickler fuer den Anwender"

- kein zeichenorientiertes User-Interface

- GUI identisch mit Windows 3

- 95 Prozent in C und C++

- hochgradig portabel (HAL).

Einige dieser Punkte beduerfen eines Kommentars: Neben Multitasking realisiert Windows NT heute auch ein Multithreading, das heisst, auch innerhalb eines Prozesses sind parallele Ablaeufe verfuegbar. Dies ist bei den heutigen Unix-Varianten nur ausserhalb des Kernels realisiert. Aber erst mit Kernel-Threads steht ausreichende Performance zur Verfuegung.

Obwohl einige Unix-Freaks immer noch das Gegenteil behaupten: Windows NT ist Multiuser-faehig, es entspricht genau dem Multiuser- Konzept der modernen Client-Server-Architektur. Windows NT setzt voraus, dass am Arbeitsplatz ein Rechner mit eigenem Betriebssystem agiert, der vor allem das User-Interface abwickelt, es aktzeptiert keine dummen Terminals. In diesem Sinne ist Windows NT nicht Multiterminal-faehig, unterstuetzt jedoch den Multi-Client-Betrieb der Client-Server-Architektur voll.

Sowohl die Unix-Varianten als auch Windows NT unterstuetzen symmetrisches Multiprocessing

(SMP). Hier spielt aber im Moment noch Unix seine Reife gegenueber dem jungen Windows NT aus: Einige Unix-Varianten

(bei weitem nicht alle) skalieren mit der Anzahl der Prozessoren besser als Windows NT heute. Jedoch ist es noch gar nicht so lange her, dass auch diese Unix-Varianten erst das "Laufen auf vielen Prozessoren" gelernt haben. Windows NT wird die Erfahrungen der Unix-Welt nutzen und sicher noch in diesem Jahr ein gutes Stueck aufholen.

Viele "Schrauben zum Drehen" ermoeglichen dem Unix- Systemspezialisten das Fein-Tuning seines Systems. Damit ist allerdings wirklich nur der Fachmann gemeint, sonst laeuft eventuell gar nichts mehr. Windows NT handelt nach dem Motto "weniger ist mehr" und bietet die Feinabstimmung leichter bedienbar ueber eine grafische Oberfaeche

(GUI) an. Das verringert nebenbei den Ausbildungsaufwand - wenn man nicht schon den Unix-Spezialisten hat.

Hier zeigt sich, dass Unix zunaechst als Entwicklungsumgebung fuer den Programmierer entwickelt wurde. Diese Ausrichtung haben die verschiedenen Unix-Varianten bis heute nicht verloren. Dem Spezialisten eroeffnet dieser Umstand eine Fuelle von Moeglichkeiten. Der Endanwender aber hatte lange Zeit nur Nachteile davon. Selbst beim GUI zeigt sich diese Ausrichtung immer noch: Waehrend Windows NT konsequent nur ueber ein User-Inferface verfuegt, handelt es sich bei OSF/Motif, dem Oberflaechenstandard bei Unix, zunaechst nur um ein Toolkit fuer den Entwickler, der ein GUI entwickeln soll. Dass einige Anbieter von Unix-Varianten gute Unix-GUIs entwickelt haben und anbieten, steht ausser Frage, es ist aber eben kein Standard.

Windows NT ist portabel und sogar schon mehrfach portiert worden, auf Digitals Alpha-Architektur, auf Silicon Graphics MIPS- Architektur und insgeheim auch schon auf andere. Das Microsoft- Betriebssystem konzentriert seine Hardware-Abhaengigkeiten in einem Hardware Abstraction Layer (HAL). Damit steht es den Unix- Varianten in puncto Portabilitaet in Nichts nach. Es wird nur eine Frage der Zeit und des Market-Pulls sein, bis es Windows NT fuer alle RISC-Plattformen gibt.

Windows-NT-Positionierung - ein gluecklicher Unfall

Manchmal wird Windows NT als "Flop" bezeichnet. An dem Vorwurf ist durchaus etwas Wahres dran. Aber nur etwas. Microsofts urspruengliche Positionierung von Windows NT war eine zweifache: als High-end-Workstation-Betriebssystem und als "Netware-Killer" gegen Novell.

Zunaechst zum Flop und damit zum Unfall: Wenn Microsoft nicht einmal die eigenen Standardanwendungen in einer 32-Bit-Version, die die Vorteile von Windows NT zum Tragen bringen wuerden, auf den Markt bringt, wie sollen dann andere Anbieter einen Anreiz finden, entsprechende Programme zu entwickeln. Und die Verfuegbarkeit von Standardsoftware entscheidet heute ueber den Einsatz einer Betriebssystem-Plattform auf dem Desktop, auch bei den High-end- Workstations. Wenn dann beim Release von Windows NT auch noch angekuendigt wird, dass der Nachfolger von Windows 3.X Multitas-

kingfaehig ist und ein Flat-Memory-Management besitzt, dann bieten sich die echten Marktchancen nur noch im Server-Bereich.

Hier nahm der Positionierungsunfall aber eine glueckliche Wende: Dave Cutler als Chef der NT-Entwicklung hat sich wohl gesagt: "Wenn schon eine Betriebssystem-Neuentwicklung, dann ein richtiges Betriebssystem." Als guter Technologe hat er ein Betriebssystem geschaffen, das nicht nur gegen Netware im herkoemmlichen Office- Sektor als File- und Print-Server antreten kann, sondern das heute in der Lage ist, riesige Mission-critical-Anwendungen wie die SAP- Standardsoftware R/3 zu bewaeltigen - nicht nur im Forschungslabor, sondern im produktiven Betrieb.

Dabei hat sich gezeigt, dass Windows NT im Verhaeltnis zu seiner Jugend stabil laeuft und robust ist. Viele NT-Systeme halten inzwischen ueber Monate hinweg durch, ohne dass sie einmal neu gebootet werden muessen. Erfolge im Server-Bereich sind fuer Windows NT deshalb vorprogrammiert. Verlockend fuer den Anwender ist zudem, dass er zu den Windows-PCs auf den Arbeitsplaetzen nun wieder eine homogene Server-Welt bekommt, mit identischem User Interface und wohl noch eine Zeit lang mit einem guenstigen Preis-Leistungs- Verhaeltnis.

Erfahrungen mit R/3 unter Windows NT

Intensive Erfahrungen mit Windows NT als Server-Plattform wurden im Zusammenhang mit der Portierung von R/3 gemacht. Das Competence Center fuer R/3 auf Windows NT (R/3NTC) der Ixos Software GmbH hat unter anderem die Aufgabe, NT-Plattformen, auf denen R/3 zum Einsatz kommen soll, einem Zertifizierungsprozess zu unterziehen. Dabei werden nicht nur rund 1000 Regressionstests mit R/3 auf Windows NT gefahren, sondern auch differenzierte Performance- Benchmarks durchgefuehrt.

In der Tendenz hat sich gezeigt, dass sich NT-Plattformen auf vergleichbarer Basis keineswegs schlechter verhalten als Systeme unter einem Unix-Derivat. Lediglich die Skalierbarkeit hinsichtlich der Anzahl von Prozessoren setzt dem Datenbank-Server von R/3 unter Windows NT noch etwas engere Grenzen als unter den Unix-Varianten.

Im R/3NTC wurden in einer Benchmark-Situation auf einer einzigen NT-Plattform, das heisst, Applikations- und Datenbank-Server auf einem Rechner, bis zu 250 gleichzeitige Benutzer im FI-Modul von R/3 simuliert. Unter fast voller Auslastung der CPUs lag die durchschnittliche Antwortzeit unter zwei Sekunden. Es ist zu erwarten, dass mit weiteren Versionen von Windows NT in einer verteilten Konfiguration

(Applikations- und Datenbankserver getrennt) groessere Installationen realisierbar sind.

Deshalb ist es interessant, einen Blick auf die Weiterentwicklung von Windows NT und auf die Betriebssystem-Strategie von Microsoft zu werfen. Derzeit entwickelt das Unternehmen seine Betriebssysteme in zwei Linien, die eng miteinander verknuepft sind und voneinander profitieren. Sie bauen beim Desktop auf Windows 3 und im High-end-Workstation- und Server-Bereich auf Windows NT auf. Dabei wird im naechsten Maintenance-Release von Windows NT, also in NT 3.5, eine staerkere Differenzierung in NT Workstation und NT Server vorgenommen.

Windows 4.0 schoepft dann aus der mit Windows NT entwickelten Technologie (Multitasking, Flat-Memory-Management) und erhaelt zusaetzlich ein verbessertes User-Interface. Bei der Weiterentwicklung von Windows NT zu Cairo werden objektorientierte Technologien auf Basis OLE staerker und auch verteilt unterstuetzt - Distributed OLE (DOLE) und objektorientiertes File System

(OFS). Fuer heute erforderliche Entscheidungen ueber eine Server- Plattform hat dies jedoch noch keine Relevanz.

Windows 4.0 liegt hier naeher: Der Anwender erhaelt damit eine homogene Client-Server-Umgebung.

Homogene Client-Server-Umgebungen sind zwar nicht als strategisches Ziel zu betrachten, denn man sollte auch morgen noch in der Lage sein, neue Technologien in bestehende Umgebungen zu integrieren. Solche Umgebungen erleichtern aber den Aufbau, die Software-Entwicklung und den Betrieb.