Realistisch betrachtet hat Windows gleich eine Reihe von Problemen, die die Weiterentwicklung schwierig machen. Das zeigt sich zum Beispiel daran, dass Windows XP erst mit Windows 7 einen "würdigen" Nachfolger bekommt. Windows Vista wird von vielen Anwendern als Beta-Version angesehen, die mit Windows 7 endlich RTM-Qualität erlangt. Die heutigen, auf Windows NT basierenden Windows-Versionen kranken vor allem an drei Dingen:
- Modularität: Schon 1993 beim Erscheinen von Windows NT staunte die Fachwelt, als es hieß, das neue Windows wäre nur mit dem gesamten grafischen Subsystem hochzufahren. Da Windows NT für damalige Verhältnisse mit 16 MByte recht große Ansprüche an den Hauptspeicher stellte, war es insbesondere als Serverbetriebssystem vorgesehen. Auf Servern ist es üblich, nur eine Textkonsole zu starten. Das grafische Subsystem kann man eventuell später hochfahren.
Windows NT krankte von Anfang an daran, dass die einzelnen Komponenten viel zu direkt miteinander interagierten. War eine Funktion nicht schnell genug, so ging der Entwickler kurz zum Kollegen ins Büro, und die beiden vereinbarten eine Methode, wie man das Problem lösen kann. Meist endete das darin, dass sich zwei Komponenten gegenseitig direkt aufrufen, die nach dem "Speed-Tuning" nur gemeinsam oder gar nicht lauffähig sind. So wurde aus Dave Cutlers Microkernel-Konzept der Monolith Windows NT, später wurde dafür der Marketingbegriff Hybrid-Kernel geboren.
Das hat sich bis heute nicht geändert. Windows XP verfügt zwar über eine Recovery Console, die tatsächlich ohne Grafik läuft. Allerdings kann man das Netzwerk nicht starten. Windows Server 2008 kommt mit einer Textmodus-Mogelpackung, die sich Server Core nennt. Aber auch in dieser Version muss das komplette Grafiksubsystem gestartet werden. Einfache Win32-Anwendungen wie Notepad laufen ohne Probleme. Außerdem können viele Serverdienste nicht oder nur eingeschränkt genutzt werden, da sie eine Administration über ein GUI-Frontend auf der lokalen Maschine benötigen.
- Erblasten: Anders als Unix ist Windows mit den Jahren immer größer geworden. Dieser Ballast hat sich dadurch angesammelt, dass Microsoft immer wieder neue Techniken implementiert hat, die sich hinterher als nutzlos oder obsolet herausstellten. Dazu gehören beispielsweise MTS oder MSMQ. Diese Technologien müssen jedoch von Version zu Version mitgeschleppt werden, um die Rückwärtskompatibilität zu wahren. Heute nutzt man sie kaum noch. Das gleiche Schicksal wird COM ereilen, da Microsoft nun empfiehlt, .NET-Code statt COM-Komponenten zu entwickeln.
Unter Erblasten müssen auch strategische Fehlentscheidungen bei der Entwicklung von Windows bezeichnet werden. Dazu die zählt die Registry, die für einen Großteil der Windows-Performanceschwäche verantwortlich ist. Config-Files können das gleiche leisten und bremsen das System nicht aus.
- Security: Erblasten und mangelnde Modularität sind sicherlich ein spezifisches Problem von Windows. Security hingegen ist ein Problem, das alle modernen Betriebssysteme haben. Pufferüberläufe und Andockpunkte für Rootkits gibt es bei Unix-Betriebssystemen genauso wie bei Windows. Mit Midori will Microsoft das jetzt grundsätzlich ändern.
- Midori nimmt Formen an: Das Ende von Windows ist besiegelt
- Ballast, Erblasten, Sicherheitsprobleme: Windows ist nicht mehr zu retten
- Dogma Managed Code: Sicherheit wichtiger als Leistung
- Pufferüberläufe: einfach nicht auszumerzen
- Zugriff auf den Hauptspeicher: in Midori strengstens verboten
- Auch Managed Code schützt nicht vor Malware
- Fazit
Neueste Kommentare
10 Kommentare zu Midori nimmt Formen an: Das Ende von Windows ist besiegelt
Kommentar hinzufügenVielen Dank für Ihren Kommentar.
Ihr Kommentar wurde gespeichert und wartet auf Moderation.
Kommt mir sehr bekannt vor
Damals beim AMIGA OS war es schon so, dass jeder Prozess seinen Speicher vom Kernel erbitten musste und der ihm dann einen Bereich zuwies. Kein Prozess wusste. wo der Speicher wirklich lag, er wurde vom Kernel in Echtzeit umadressiert. Und das war schnell. Überläufe waren so nicht möglich. Man konnte so auch problemlos jeden Prozess einfrieren oder killen, wobei das komplette RAM zurückgegeben wurde.
Kaum 20 Jahre später kommt auch MS auf die Idee. :-)
AW: Kommt mir sehr bekannt vor
Die älteren Amigas hatten eine 68000 CPU von Motorola. Diese hatte keine MMU. Somit konnten die Adressen nicht ‚umprogrammiert‘ werden. Das einzige was gemacht wurde ist, dass eine relative Adressierung verwendet wurde. Das hat aber auch schon DOS gemacht. Erst die 68030 brachte eine MMU mit, die einen Speicherschutz ermöglichte. Gleiches war ab dem 386er von Intel (im Protected Mode) möglich. Die Idee so etwas auszunutzen ist dann auch ab windows 3.1 geschehen.
Im übrigen ist es im Amiga schon zu Speicherüberläufen durch Programme gekommen. Dies führte dann zu den bekannten Guru-Meditations.
Das neue an Midori ist doch, dass bevor ein Programm gestartet wird, nun bekannt ist, dass (theoretisch) kein Speicherüberlauf passieren kann. Dies wird durch ein Zusammenspiel der MSIL und dem Compiler ermöglicht.
Das Amiga-OS hat Prozesse einfach nur gestartet und drauf *gehofft*, dass kein Prozess Mist baut…
Vorherrschaft
Es gibt vor allem auch einen ganz großen Punkt, warum Windows (zumindest im privaten Bereich) überhaupt noch existent ist: Die Spiele-Industrie !
Solange Zocken auf Linux oder Mac nur Tetris-Charakter hat wird Windoof
immer der Standard bleiben.
Da bin ich bei Midori allerdings gespannt, ob das quasi-Monopol gesprengt wird.
Jepp, die Spiele sind es!
Genau so sehe ich das schon seit Jahren.
Ich spiele auch mit 44 Jahren noch leidenschaftlich gern am PC, und das seit ich mit 16 Jahren in der Schule an den ersten ASCII-Spielen mitprogrammierte.
Alle andern Tätigkeiten wie Home-Office, Webentwicklung usw. kann ich gut mit jedem anderen BS tun. Aber die Spiele binden mich an Windows. Sollte es irgendwann möglich sein, alle Spiele genauso unter Linux zu spielen – und sollte Linux so anwenderfreundlich werden wie es Windows heute ist – dann wechsle ich sofort mit Freuden.
Alternativen
Solange die Anwender die Macken von Windows für "nromales Computerverhalten" halten und hinnehmen, Linux bei 1% MA auf dem Desktop dahindümpelt und Macs als "elitär" und "überteuert" halten (wer braucht schon Technik, die gut funktioniert, wenn es auch welche tut, die weniger gut funktioniert), ist doch alles in bester Ordnung!
Aber für MS wird nicht alles beim Alten bleiben:
Das MacOSX entwickelt sich gerade zur endlich auch breiter akzeptierten Alternative für diejenigen, die für erheblich weniger Probleme bereit sind, ein wenig mehr Geld auszugeben. Das spricht sich herum . gut so!
AW: Alternativen
Also Mac OS X als ernsthafte bedrohung zu sehen für Windows ist ungefähr das gleiche wie Zune als ernsthafte bedrohung für den ipod. Also Linux mag zwar auf 2% rumdümpeln aber die 5 bis 8% vom Mac sind auch nicht gerade riesig vor allem in anbetracht der momentanen finanzkrise ist keiner bereit für Mac mehr zu zahlen die selbe hardware und ein betriebssystem zu kriegen das zwar schöner aussieht als windows aber genau so anfällig ist was man auch sehen würde wenn es wirklich viele mac benutzer geben würde :D
also schön auf dem boden bleiben.
Lohnt es sich noch…?
Lohnt es sich denn dann noch in NET einzuarbeiten. Erfahrungen mit dem SQL Server zu sammeln und Datenbankanwendungen mit C Sharp zu programmieren???
Oder sollte man sich in weiser voraussicht schon auf Alternativen stürzen?
AW: Lohnt es sich noch…?
Da du sowieso dann mit C# (soll java imitieren) arbeiten musst das keine pointer kennt, wird es warscheinlich klüger sein c’# zu lernen als c++ aber bis dahin ist noch viel zeit. und bis dahin sollte man eh entweder mit c++ oder java arbeiten je nach den anforderungen die gestellt werden.
Es gibt auch ein altes bosnisches sprichwort: "Von zuviel Wissen hat noch keiner Kopfschmerzen gekriegt!".
AW: Lohnt es sich noch…?
Python ist die Alternative :-)
Unbegründet …
"Denn dabei besteht die konkrete Gefahr, die Marktführerschaft einzubüßen, wenn Midori keine breite Akzeptanz findet." – Falsche Schlussfolgerung!
Technologien können über reine Themen oder Sparten den Einstieg beginnen.
Zum Beispiel: Midori mit Exchange. Dadurch liese sich die Technologie in kleineren Rahmen testen und später in andere Sparten ausweiten, bis hin zu den Clients im Endstadium.
Viel spannender ist die Frage: Wo sieht Linux dann aus? oder beginnt dann schon das Web 3.0 um sich zu greifen ….