Was ist der Unterschied zwischen den Ordnern „System32“ und „SysWOW64“ in Windows?

Was ist der Unterschied zwischen den Ordnern "System32" und "SysWOW64" in Windows?

Was ist der Unterschied zwischen den Ordnern "System32" und "SysWOW64" in Windows?

Auf 64-Bit-Versionen von Windows verfügen Sie über zwei separate Ordner für Programmdateien. Aber es endet nicht dort. Sie haben auch zwei separate Systemverzeichnisse, in denen DLL-Bibliotheken und ausführbare Dateien gespeichert sind: System32 und SysWOW64. Trotz der Namen ist System32 voller 64-Bit-Dateien und SysWOW64 ist voller 32-Bit-Dateien. Also, was gibt?

Was ist System32?

VERWANDTER ARTIKEL Was ist der Unterschied zwischen den Ordnern "System32" und "SysWOW64" in Windows? Was sind DLL-Dateien, und warum fehlt eines von meinem PC?

Das System32-Verzeichnis enthält Windows-Systemdateien, sowohl .DLL-Bibliotheksdateien, die von Programmen verwendet werden, als auch .EXE-Programmprogramme, die Teil von Windows sind. Während die meisten Dateien, die Sie hier finden, Teil des Windows-Betriebssystems sind, installieren manchmal auch Softwareprogramme von Drittanbietern ihre eigenen DLL-Dateien in diesem Ordner.

Anwendungen, die auf Ihrem System ausgeführt werden, werden möglicherweise im Ordner „Programme“ oder an anderer Stelle installiert, laden jedoch häufig systemweite Bibliotheken aus dem Ordner „System32“.

Trennen von 32-Bit- und 64-Bit-Bibliotheken

Was ist der Unterschied zwischen den Ordnern "System32" und "SysWOW64" in Windows?

VERWANDTER ARTIKEL Was ist der Unterschied zwischen den Ordnern "System32" und "SysWOW64" in Windows? Was ist der Unterschied? Zwischen den " Programmdateien (x86) ” und " Programme ” Ordner in Windows?

In einer 64-Bit-Version von Windows verfügen Sie über einen Ordner C: Programme mit 64-Bit-Programmen und deren Dateien und einen Ordner C: Programme (x86) mit 32-Bit-Programmen und ihren Dateien. Es ist hilfreich, diese Dateien zu trennen, da 64-Bit-Programme 64-Bit-DLL-Dateien und 32-Bit-Programme 32-Bit-DLL-Dateien benötigen.

Wenn ein 32-Bit-Programm eine benötigte DLL-Datei lädt, eine 64-Bit-Version findet und versucht, sie zu laden, stürzt es ab. Durch die Trennung von 64-Bit- und 32-Bit-Software in zwei verschiedene Programmordner stellt Windows sicher, dass sie nicht durcheinander geraten und Probleme verursachen.

Jedoch sind nicht alle DLL-Dateien in Programmdateien gespeichert. Viele systemweite Bibliotheken, die in Windows enthalten sind, sind in C: System32 gespeichert, und einige Programme legen hier auch ihre eigenen Bibliotheksdateien ab. So wie Windows separate 32-Bit- und 64-Bit-Programmordner besitzt, verfügt es auch über separate 32-Bit- und 64-Bit-Versionen des System32-Ordners.

System32 und SysWOW64

Auf einem 32-Bit-Computer speichern alle 32-Bit-Programme ihre Dateien in C: Programme, und der systemweite Speicherort der Bibliothek lautet C: System32.

Auf einem 64-Bit-Computer speichern 64-Bit-Programme ihre Dateien in C: Programme, und der systemweite Ordner C: Windows System32 enthält 64-Bit-Bibliotheken. 32-Bit-Programme speichern ihre Dateien in C: Programme (x86), und der systemweite Ordner ist C: Windows SysWOW64.

Das ist definitiv nicht intuitiv. Trotz der „32“ -Reihe Im Namen enthält der Ordner System32 64-Bit-Bibliotheken. Und trotz der 64 im Namen enthält der SysWOW64-Ordner 32-Bit-Bibliotheken — zumindest auf 64-Bit-Versionen von Windows.

Im Allgemeinen müssen Sie dies nicht wissen. Das Windows-Betriebssystem und die von Ihnen verwendeten Programme legen ihre Dateien automatisch am richtigen Speicherort ab und verwenden den richtigen Ordner. Wenn Sie jedoch jemals eine DLL-Datei manuell an der richtigen Stelle installieren müssen oder suchen, wo eine installiert ist — was sehr selten ist, dann müssen Sie wissen, welche welche ist.

WOW64, erklärt

Was ist der Unterschied zwischen den Ordnern "System32" und "SysWOW64" in Windows?

VERBUNDENER ARTIKEL Was ist der Unterschied zwischen den Ordnern "System32" und "SysWOW64" in Windows? Warum sind die meisten Programme immer noch 32-Bit auf einem 64 -bit Version von Windows?

Das „WOW64 ” Teil des Namens bezieht sich hier auf Microsoft Windows 32-Bit auf Windows 64-Bit ” Software, die ein Teil des Betriebssystems ist. Dadurch kann Windows 32-Bit-Programme auf einer 64-Bit-Version von Windows ausführen. WoW64 leitet Dateizugriff um, um sicherzustellen, dass Programme ordnungsgemäß funktionieren.

Wenn Sie beispielsweise ein 32-Bit-Programm auf einer 64-Bit-Version von Windows installieren und es versucht, in den Ordner C: Programme zu schreiben, verweist WoW64 es auf C: Programme ( x86). Und wenn es auf den Ordner C: Windows System32 zugreifen möchte, verweist WoW64 auf C: Windows SysWOW64. Windows tut dies mit einem Dateisystem-Redirector.

Dies alles geschieht automatisch und transparent im Hintergrund. Das Programm muss nicht einmal wissen, dass es auf einem 64-Bit-Betriebssystem läuft, wodurch ältere 32-Bit-Programme ohne Änderung auf 64-Bit-Versionen von Windows ausgeführt werden können. WOW64 leitet auch den Registrierungszugriff um, um sicherzustellen, dass separate Bereiche der Registrierung für 64-Bit- und 32-Bit-Programme vorhanden sind.

Also warum ist System32 64-bit und SysWOW64 32-bit?

All das bringt uns zurück zu der Millionen-Dollar-Frage: Warum ist das „System32 ” Ordner 64-Bit und SysWOW64 32-Bit?

Die Antwort scheint zu sein, dass viele 32-Bit-Anwendungen für die Verwendung des C: Windows System32-Verzeichnisses fest programmiert waren. WannEntwickler kompilierten diese Anwendungen für 64-Bit-Versionen von Windows, sie verwendeten weiterhin das Verzeichnis C: Windows System32.

Anstatt das Verzeichnis umzubenennen und Entwickler dazu zu zwingen, auf das neue Verzeichnis zu wechseln und dabei viele Anwendungen zu zerstören, hat Microsoft „System32 ” als das Standardverzeichnis der Systembibliothek. Sie erstellten ein neues Bibliotheksverzeichnis für Anwendungen, die unter der WoW64-Ebene laufen, die sie „SysWOW64“ nannten. Wenn Sie so darüber nachdenken, macht der Name mehr Sinn.

Ja, es ist ein bisschen albern, dass ein Verzeichnis mit “ 32 ” im Namen ist jetzt 64-Bit. Vielleicht hätte Microsoft das kommen sehen sollen, als sie es in den 90ern C: Windows System32 genannt haben. Aber obwohl ein einfacheres Namensschema schön wäre, ist es nicht wert, eine Menge Programme zu brechen und mehr Arbeit für Entwickler zu schaffen, nur um dorthin zu gelangen. Das bedeutet, dass wir auf absehbare Zeit mit System32 und SysWOW64 festgefahren sind.

q , quelle

Zusammenhängende Posts:

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.