Linux heeft de reputatie betrouwbaarder te zijn dan Windows NT. Deze bewering moet zorgvuldig worden onderzocht. Hij lijkt logisch, omdat de Linux-code beknopter is dan die van NT. Bovendien wordt Linux voortdurend verbeterd door een heel legioen enthousiastelingen die samenwerken om alle fouten uit het systeem te halen.
NT daarentegen is ontwikkeld door een groot Microsoft-team, dat ernstig wordt beperkt door commerciële overwegingen, met name de eis dat Microsoft de toekomst van NT kan bepalen en kan afstemmen op de eigen commerciële ambities. Gebruikerseisen komen op de tweede plaats. Ik ben dan ook van mening dat Linux uiteindelijk zal overwinnen. We zullen zien.
Linux is nooit zo zwaar onder druk gezet als NT. Er zijn nog maar weinig grafische applicaties, en er is geen equivalent van de massieve NT-applicaties zoals Photoshop. Op de server verzorgt NT een database, een web-server, een applicatieserver, e-mail en dergelijke. De meeste van deze servers zouden heel betrouwbaar kunnen draaien op hun eigen NT-server, maar als er meerdere applicaties op één machine draaien dan raakt NT in de war en crasht het systeem om de haverklap. In feite is het onzinnig een onvolgroeid systeem als NT (of Linux) te overbelasten als er ook beproefde systemen als Unix of AS/400 te koop zijn. Veel kritiek op NT is te wijten aan misbruik door overbelasting.
Microsoft maakt een hoop fouten met NT, ondanks alle commerciële succes. Misschien wordt men aan het denken gezet door de toenemende dreiging van Linux en het groeiende besef dat NT een instrument is om klanten met handen en voeten aan Microsoft te binden, met het bijbehorende prijskaartje – er moet iemand meebetalen aan de bijna obscene winstcijfers van Microsoft. De poging om de hele midrange-markt te domineren, van desktop tot server, leidt ertoe dat het concept van een alomvattend besturingssysteem op de helling gaat. Een van de zwakke plekken van Unix was dat het systeem te groot en te complex was voor de desktop. Dit geldt ook voor NT.
Bij de eerste release van NT waren de gui-functies als client in ‘protected’ mode geïmplementeerd. Deze robuuste architectuur kwam overeen met die van Unix- of VMS-werkstations. Het betekende wel dat de Windows API’s moesten worden geëmuleerd door procedures tussen processen aan te roepen; een aanzienlijke overhead. Daarbij was compatibiliteit met applicaties voor Windows 3.1 en 95 niet erg praktisch. Met het invoeren van het Win95-concept werd de gui in het besturingssysteem ingebouwd; de grafische prestatie verbeterde en de compatibiliteit met Windows 95 nam toe. Op dat moment was NT een prima desktop-systeem. Bij de daaropvolgende releases had Microsoft zich beter kunnen concentreren op efficiency en het terugdringen van overhead en het ondersteunen van randapparatuur.
In theorie zouden de gui-uitbreidingen de server-functies niet moeten beïnvloeden. Op de server is een gui echter niet nodig, hooguit een speciaal interface voor de systeembeheerder, dat naast de database draait. Zo’n interface is prettig voor de systeembeheerder, maar essentieel is het allerminst. Vrijwel alle dagelijkse operationele NT-beheeractiviteiten worden op afstand uitgevoerd op een Windows 95 of 98 client, geen NT. De server-versie kan dus best zonder gui, in elk geval de ingebouwde Win95-compatibele versie. In plaats daarvan zou de server zich beter kunnen concentreren op ‘scheduling’, protectie, ‘multiprocessing’, clustering en andere typische server-functies.
Het hele Microsoft-concept, waarbij één besturingssysteem voor zowel de client als de server als een voordeel wordt gebracht, rammelt aan alle kanten. De client moet efficiënt, single-user en startklaar zijn en moet speciaal geschikt zijn voor grafische toepassingen en connectiviteit. De server moet schaalbaar zijn, een groot aantal gelijktijdige sessies aankunnen en uiteenlopende randapparaten ondersteunen; de nadruk moet liggen op efficiënte input en output. Deze eisen komen niet met elkaar overeen. In de praktijk gebruiken de meeste organisaties Win95-clients en NT- of Unix-servers. De databases, webservers en dergelijke draaien op NT, maar de meeste NT-applicaties zijn in feite clients die op Windows 95 draaien. En het laat de Windows-client koud of de server onder NT, Unix, OS/400 of OS/390 draait!
De conclusie is simpel. Microsoft moet twee verschillende producten ontwikkelen, één voor de client en één voor de server, die desgewenst uit gemeenschappelijke onderdelen kunnen bestaan. Ik ben benieuwd of Linux in dezelfde val loopt.