Hallo @ all,
Windows 7 ist ziemlich stabil, das ist mehr oder weniger unbestritten. Worauf diese Stabilität letztendlich aufbaut wird aber meist vernachlässigt.
Ich nenne das die de-facto-Bankrott-Erklärung des damals angeblich so revolutionären Win95-Konzepts. Sprich die Verwendung von System-Modulen (DLLs, OCX, ...) und deren gemeinsame Nutzung aus verschiedenen Programmen heraus. Die meisten Probleme / Inkompatibilitäten / Konflikte früherer Windowsversionen waren darauf zurückzuführen.
Doch anstatt dieses Konzept endlich mal zu begraben und einen Schlußstrich unter vergangene Fehler zu ziehen, wird weiterhin eisern an eine Registry und DLL/OCX/Schlagmichtott die in der Registry registriert werden müssen festgehalten.
Um nun mehr Stabilität zu bekommen wird ein anderes Konzept (Virtualisierung) über das vorhandene mangelhafte drübergestülpt um es stabiler zu machen. Das klingt vielleicht etwas verwirrend also versuche ich es mit einem stark pauschalisiertem Beispiel:
Früher war das so:
- User installiert Anwendung A
- Anwendung A installiert DLL XY.dll v2.0 ins System32 Verzeichnis,
- Danach installiert User Anwendung B
- Anwendung B installiert DLL XY.dll v1.0 ins System32 Verzeichnis, weil älter, und schlecht programmiert (schaut nicht nach ob schon vorhanden),
- -->Anwendung A funktioniert nicht mehr,
- User denkt scheiß drauf und deinstalliert Anwendung A,
- Uninstall von Anwendung A deinstalliert DLL XY.dll v1.0 (weil schlecht programmiert),
- --> nun läuft auch Anwendung B nicht mehr, weil DLL XY.dll gar nicht mehr vorhanden ist.
Ja, früher gab es Zeiten da mußte man zwei mal am Tag sein Windows frisch aufziehen.

Warum macht man denn so ein Scheiß wird man sich jetzt denken. Die Antwort hieß zur Einführung von Win95: Um Resourcen zu sparen durch die gemeinsame Nutzung.
Was macht nun Windows 7 anders(/besser?)
Vista/Windows 7 will von vorne herein gar nichts sparen, schon gar nicht Resourcen. Warum auch, der Trottel von Dummie-EndUser sucht gerade zu nach einem Grund seinen Rechner aufzurüsten. Also wird da aus dem Vollem geschöpft.
Bei obigem Beispiel sieht es unter Windows 7 nun so aus:
- Windows 7 kommt schon von Haus aus mit der neuesesten XY.dll v3.0 daher,
- User installiert Anwendung A,
- Anwendung A versucht DLL XY.dll zu installieren (überschreiben),
- Win7 denkt sich: das kannst Du gleich mal knicken, XY.dll wird nicht überschrieben, sondern die Datei als XY_der_Anwendung_A.dll aber mit dem Alias (Hardlink) XY.dll gespeichert. Nun wird der Anwendung A nur noch mit etwas Registry-Manipulation beigebracht auf XY_der_Anwendung_A.dll anstatt auf XY.dll.
- Danach installiert User Anwendung B
- Wieder greift Win7 dazwischen und installiert DLL XY_der_Anwendung_B.dll,
- dabei bleibt die ganze Zeit die originale XY.dll unangetastet.
- Wird Anwendung A oder B deinstalliert wird nur der entsprechende Alias also XY_der_Anwendung_A.dll oder XY_der_Anwendung_B.dll gelöscht aber nicht XY.dll.
Nun laufen alle Programme richtig ohne Abstürze und ohne sich gegenseitig zu beinflußen. Ihr habt euch vielleicht gewundert warum auf
C: gleich zwei "
Programme" Ordner existieren und der richtige gar nicht mal so heißt, sondern "
Program Files". Da steckt dasselbe Prinzip dahinter.
Da werden sich die meisten jetzt denken: Das ist doch einfach toll, Win7 ist also wirklich stabiler als alles andere.
Doch die Welt ist nicht einfach. Alles hat seine Schattenseiten. Die offenkundigste Schattenseite der enorme Speicherplatzverbrauch auf der Platte dürfte die wenigsten jucken. Doch das weitaus schlimmere Resultat bleibt dem Endanwender leider verborgen:
Microsoft gibt Softwareschmieden quasi einen Freibrief schlecht zu programmieren, das BS wird die Scheiße die ein schlechter Programmierer ohne jeden Hang zur Optimierung einem System anrichtet schon wieder ausbügeln. Es kostet ja bloß Resourcen - die des Users nicht die eigenen. Jeden Monat wenn ich die Umsatzsteuer mit DATEV buchen muß ärgere ich mich über dieses Paradebeispiel hirnloser Programmierung.
Das zweite viel schlimmere Problem, man opfert Performance zu gunsten der Kompatibilität. Würden man Windows 7 von Grund auf neu programmieren, ohne jegliche Kompatibiltätseinschränkung zu bestehender Software die Fehler/ Mängel/ und schlichtweg veraltete Konzepte hinter sich lassen wäre es problemlos möglich ein Windows 7 zu bauen, das auf einer HDD in weniger als 10s startet, weniger als 1GB groß ist und selbst mit einem alten E6300 C2D schneller wäre als das bestehende Win7 auf einem 2600k. Bei besserem Funktionsumfang versteht sich.
Auf der Systempartition gäbe es dann kein 70.000 Dateien sondern maximal 1000. Aber dann würde man ein sehr einfach zu handhabendes System haben. Eines für das man kein Spezialisten und keine Spezialsoftware braucht um Probleme zu lösen, die da gar nicht wären ohne diese unnötige Komplexität, hinter der man die eigene Notwendigkeit verschanzt.