Was ist "SysWOW64" und wie funktioniert es?
Werden SysWOW64 und System32 während des Startvorgangs von Windows 7 beide verwendet / in den Arbeitsspeicher geladen?
Was ist "SysWOW64" und wie funktioniert es?
Werden SysWOW64 und System32 während des Startvorgangs von Windows 7 beide verwendet / in den Arbeitsspeicher geladen?
Antworten:
Microsoft macht die Dinge manchmal rückwärts, und dies ist ein weiteres Beispiel dafür. System32
ist das 64-Bit- Windows-Systemverzeichnis und SysWOW64
das 32-Bit- Windows-Systemverzeichnis - ganz im Gegenteil zu dem, was die Verzeichnisnamen suggerieren würden.
In Windows gibt es ein "Windows" -Verzeichnis und ein "System" -Verzeichnis, und dies war bis zu Windows 16-Bit-Versionen der Fall.
Windows-Programme sollen sie mithilfe von System-API-Funktionen wie SHGetKnownFolderPath()
und finden GetSystemDirectory()
. und wenn alle das getan hätten, wäre die Welt an diesem Punkt ganz anders. Aber zu viele Leute haben törichterweise den tatsächlichen Namen des Verzeichnisses \Windows\System32
in ihre Programme eingegeben und diese Programme dann von 32-Bit-Windows auf 64-Bit-Windows portiert. In der Folge suchten viele Programme nach ausführbaren 64-Bit- Dateien und -Bibliotheken im \Windows\System32
Verzeichnis, deren Namen sie fest verdrahtet hatten. (Ironischerweise gab es das gleiche Problem bei der Migration von 16-Bit-Windows auf 32-Bit-Windows. In der \Windows\System
Regel war dies das 16-Bit-Verzeichnis "System" .)
Die Leute bei Microsoft haben sich daher dafür entschieden, \Windows\System32
das Verzeichnis so zu gestalten, dass native 64-Bit-Windows-Programme die 64-Bit-ausführbaren Dateien und -Bibliotheken finden und 32-Bit-Programme unter 64-Bit-Windows ohnehin auf einer Shim-Ebene ausgeführt werden Zugriffe auf das "System" -Verzeichnis durch 32-Bit-Programme werden in ein neues \Windows\SysWOW64
Verzeichnis umgeleitet .
Daher die bizarre Situation, die jetzt herrscht.
WoW64 steht für Windows 32 unter Windows 64:
WoW64 (Windows 32-Bit unter Windows 64-Bit) ist ein Subsystem des Windows-Betriebssystems, das 32-Bit-Anwendungen ausführen kann und in allen 64-Bit-Versionen von Windows enthalten ist - einschließlich Windows 2000 Limited Edition und Windows XP Professional x64 Edition-, IA-64- und x64-Versionen von Windows Server 2003 sowie 64-Bit-Versionen von Windows Vista, Windows Server 2008 und Windows 7.