|
Nicht immer kommt man mit Aussagen in Zeitschriften klar und fragt nach,
ob da nicht was schief gelaufen ist.
So geschehen aufgrund der Ausgabe 8/2008 - Immer wieder Vista- Seite
169, Absatz 2 der c't in der steht:
"Der so erstellte Klon startet auf verblüffend vielen x86-Rechnern
problemlos (unter anderem weil Vista im Unterschied zu XP keine
unterschiedlichen HALs mehr benutzt) und installiert ......."
Mh, das war und ist nicht eindeutig weil Vista sehr wohl mehr als eine
HAL besitzt. Da ein Test mit diversen Maschinen zeitintensiv ist, wäre
es wohl einfacher eine Anfrage zu stellen. Also den tastaturbedienenden Redakteur zu dieser Aussage
befragt, die leider gar nicht befriedigende und etwas unverständliche
Antwort lautete wie folgt:
"Da haben Sie womöglich etwas missverstanden: Die
Formulierung "unter anderem, weil Vista im Unterschied zu XP keine
unterschiedlichen HALs mehr nutzt" meint nicht, dass Vista gar
keine mehr benutzt, sondern eben nur eine statt mehreren."
Der Autor hat hier sicher die BSODs bei unpassender HAL
und Kernel verdrängt - kein Anzeichen vom Laden mehrer HALs -
nicht die Spur - die Antwort ist also keinesfalls technisch korrekt.
Andererseits, so könnte man auch argumentieren
wenn nicht Artikel aus dieser Tastatur stammten die mehr
Hintergrundwissen vermuten ließen. Allein der Explorer hätte schon
Auskunft über zwei HALs gegeben, weitere Fragen erspart man sich und geht der Sache
eben selbst auf den Grund.
Nun, auch XP nutzt nur jeweils eine HAL
zum Start, wie natürlich Vista auch.
XP hingegen besitzt einen Satz von
HALs für unterschiedliche Gegebenheiten und Hardware die es zu
unterstützen galt. Unter Vista hingegen ist die Anzahl der HALs auf
zwei reduziert, der Kernel sogar auf nur einen der bisher alles abdeckte
- obwohl zwei vorhanden sind. Selbstredend das jeweils
nur eine HAL - die HAL.DLL aktiv und geladen ist, das war in XP auch schon so und ist
in Vista nicht anders - das Bootprotokoll zeigt es auf. (oder
verschweigt etwas?)
Ein gravierender Unterschied der beiden Systeme ist:
XP hält nur die zur Hardware passende HAL nebst Kernel im
%Windir%\System32 bereit, während Vista die beiden verfügbaren HALs dort
als Standard vorhält. Mit der als Standard eingesetzten HAL (Multiprozessor und
ACPI) klappte ein Umzug auf entsprechende Geräte problemlos, auch wenn
nur ein Prozessor vorhanden ist. Ältere Hardware aber wird von Vista
ebenso erkannt und die gleiche HAL gestartet bei einem SingleProzessor
aber mit ACPI -
lediglich ein paar Treiber und Unterstützung wird nachinstalliert - wie
in XP auch im oben angegebenen Artikel
- Rückschritt auf einen SteinzeitPC. Ältestes verfügbare Model war
ein AMD2200 mit 1,8Ghz, 133FSB, 1GB Ram - auch das klappte
mit Vista nach einigem rödeln auf der Festplatte wobei der Ursprung ein
DualProzessor System (Intel) war und wie im Artikel mit Drivesnapshot
nach SingleCPU transferiert wurde. Ein Test mit einem absolut aktuellen
Modell, Samsung R60 Duro ausgestattet mit 4GByte lud die gleiche
HAL wie auch ein waschechter Celeron! M 540 mit 1,8Ghz - Noch ältere Modelle
waren nicht mehr verfügbar die durch die HAL ebenfalls wohl
abgedeckt werden könnten, wobei solche
PCs wohl seltener über genügend Speicher - 512MB unbedingt
erforderlich - verfügen dürften und damit nicht nutzbar sind.
Die beiden HALs in Vista sind
halmacpi.dll - Multiproc - ACPI 177208 Bytes
halacpi.dll - ACPI/APM 141880 Bytes (noch
unbekannte Features)
wobei die Aktive wie unter XP als hal.dll eine Kopie der auserwählten
ist und bei dem Transfer des Systems immer noch eben diese war.
Das erklärt die Aussage (startet auf verblüffend vielen x86-Rechnern
problemlos) weil die HAL das Spektrum allein abdeckt. Jedenfalls ist ein weiteres Merkmal
wohl ein einziger Kernel in Vista32, während XP32 dagegen zwei besitzt,
die 64Bit Versionen sind nicht untersucht worden.
Vista kann bei einem Umzug auf geänderte Hardware tatsächlich alles
mit einer HAL abdecken, vom Celeron über den P4 mit HT bis zum Core2Duo
und installierte auf allen Geräten eben die halmacpi die sich
als ACPI x86 im Gerätemanager meldete.
Selbst der Tausch der HAL auf Mehrkernesystemen indem
die halacpi als HAL.DLL untergeschoben wurde, brachte Vista nicht
aus dem Tritt oder verursachte Fehlermeldungen - lediglich der
Taskmanager meldete eben nun nur eine CPU was auch erwartet wurde, mehr
passierte nicht. Nicht gänzlich richtig - beim Start musste zuerst Strg
Alt Del gedrückt werden, das war es aber auch schon.
Umgekehrt funktionierte das ebenso, die "SteinzeitHAL"
inkl. System auf einen Core2Duo transferiert (schlichter HD-Tausch) lief
nach der üblichen Treibererkennung problemlos weiter - natürlich mit
nur einem Kern obwohl die CPUs korrekt im Gerätemanager angezeigt
wurden. Hier die HAL wieder mit der passenden getauscht und das System
bot 2 Kerne (CPUs) an und lief ohne Probleme. Automatisch macht es
Vista beim Umzug nicht.
Bei all den Spielereien blieb der ntoskrnl.exe jeweils
identisch - der ntkrnlpa.exe blieb aus dem Spiel.
Nachtrag:
Anfragen bezüglich Umzug auf neuere Systeme mit SATA Festplatten und
den damit verbundenen Stopfehlern:
Die nötige Änderung vor dem Umzug, oder per Vista-DVD und Regeditor
am umgezogenem System um das zu ändern:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Msahci
Wert Start auf 0 ändern. Dann startet Vista auch hier nach dem Umzug.
In der gleichen Ausgabe, Seite 91 treffen die Autoren
die Aussage:
"Für die 32-Bit-Betriebssysteme hat Microsoft aus
Kompatibilitätsgründen den verfügbaren Arbeitsspeicher explizit auf 3.12GByte
begrenzt, auch wenn 4GByte installiert sind."
Das auch mit Quellenangabe
untermauert, die auch ich sicherlich als Referenz
herangezogen hätte.. aber aus Erfahrung heraus nicht unbedingt
als Mandatory angesehen. Schon allein weil die eher willkürlich
gesetzte Grenze programmtechnisch nicht so einfach umzusetzen ist, will
man unterschiedliche Hardware gleichermaßen unterstützen.
Wie die Praxis so spielt - genau wenigstens ein Notebook wagt es, die
von Microsoft vorgegebenen Grenzen im völlig normalen Vista Home
Premium zu durchbrechen. Die Redaktion sollte sich ein Exemplar des
Samsung R60P Duro für 699.- € aus der aktuellen Werbung eines der
größten Märkte der Metro AG die am 4.4.2008 anläuft besorgen und den
Sachverhalt mal nachprüfen. Der Gewinn ist nicht übermäßig, aber es
geht auch eher um Grenzen die Microsoft gesetzt hatte. "Fatal jedenfalls ist, man kann den manipulierbaren Meldungen von Windows nicht
mehr völlig trauen." - sagte ich schon in der FAQ von Vista zum SP1 - hier
der Beweis der mit anderen Mitteln - Sysinternals - identische Werte
hervorbrachte:
Anzeige vom Systemcenter ohne SP1 und echt. ;)
Ebenso der Taskmanager - es geht doch mehr als erlaubt.
Soviel zu den Ungenauigkeiten die hin - und wieder auftreten können,
aber in einer Zeitschrift wie der c't besonders der erste Fall, sollten
einfach nicht passieren.
Michael Bormann
|