Zum Hauptinhalt springen

Warum zeigt 64-Bit-Windows 32-Bit-Programme an?

In der heutigen Welt werden Programme für verschiedene Prozessorarchitekturen entwickelt: 32-Bit und 64-Bit. Viele Benutzer von 64-Bit-Betriebssystemen wie Windows bemerken jedoch, dass sie 32-Bit-Programme ohne Probleme ausführen und verwenden können.

Dies liegt daran, dass die 64-Bit-Architektur des Windows-Betriebssystems den Kompatibilitätsmodus für 32-Bit-Programme unterstützt. Dieser Modus ermöglicht es einem 64-Bit-Betriebssystem, Programme auszuführen und auszuführen, die für 32-Bit-Prozessoren kompiliert wurden.

Es ist wichtig zu beachten, dass bei der Ausführung von 32-Bit-Programmen auf einem 64-Bit-Windows-Betriebssystem einige Leistungseinbußen auftreten. Dies liegt daran, dass der Prozessor zusätzliche Anweisungen ausführen muss, um mit 32-Bit-Programmen kompatibel zu sein. In den meisten Fällen ist der Leistungsunterschied jedoch gering und hat keinen Einfluss auf die Leistung des Programms.

Auf diese Weise können Benutzer von 64-Bit-Windows-Betriebssystemen dank des Kompatibilitätsmodus 32-Bit-Programme ohne Probleme verwenden und ausführen, wodurch sie ihre Programmauswahl erweitern und den Übergang zu einer neuen Architektur erleichtern können.

64-Bit-Windows-Funktionen für die Kompatibilität mit 32-Bit-Programmen

64-Bit-Windows verfügt über integrierte Funktionen, um die Kompatibilität mit Programmen zu gewährleisten, die für die 32-Bit-Architektur entwickelt wurden. Diese Funktionen ermöglichen es Benutzern, 32-Bit-Programme auf ihren Computern auszuführen, selbst wenn das Betriebssystem auf einer 64-Bit-Plattform ausgeführt wird.

Emulieren der 32-Bit-Laufzeitumgebung

64-Bit-Windows enthält eine 32-Bit-Laufzeitemulation, die 32-Bit-Code-Programmen den Zugriff auf die erforderlichen Systemressourcen und -funktionen ermöglicht. Sie emuliert die Umgebung einer 32-Bit-Anwendung und ermöglicht so den Zugriff auf Betriebssystemressourcen wie Speicher, Dateisystem und E / A-Geräte.

WOW64-Dienste

WOW64-Dienste (Windows 32-Bit auf Windows 64-bit) sind eine weitere wichtige Komponente, um die Kompatibilität von 64-Bit-Windows mit 32-Bit-Programmen zu gewährleisten. Mit WOW64 können Sie 32-Bit-Anwendungen auf einem 64-Bit-Betriebssystem ausführen, indem Sie eine ausführbare Umgebung und virtuelle Organisationen für 32-Bit-Prozesse erstellen.

Treiber und Kompatibilitätsbibliotheken

Um die volle Kompatibilität mit 32-Bit-Programmen zu gewährleisten, wird 64-Bit-Windows mit Treibern und Kompatibilitätsbibliotheken geliefert, mit denen Sie 32-Bit-Anwendungen ausführen und in Verbindung mit 64-Bit-Programmen und Systemkomponenten verwenden können. Dies beinhaltet die Unterstützung für 32-Bit-Gerätetreiber, 32-Bit-APIs und andere Komponenten, die für die Ausführung von 32-Bit-Programmen auf einem 64-Bit-Betriebssystem erforderlich sind.

Mit diesen Funktionen bietet 64-Bit-Windows eine sichere und zuverlässige Ausführung von Programmen, die für die 32-Bit-Architektur entwickelt wurden, auf Computern mit einem 64-Bit-Betriebssystem. Benutzer können alle Vorteile einer 64-Bit-Plattform nutzen, indem sie ältere 32-Bit-Programme und -Anwendungen weiterhin verwenden können.

Unterstützung für WOW64

Wenn Sie eine 32-Bit-Anwendung auf einem 64-Bit-Windows ausführen, fängt WOW64 Aufrufe an Systemfunktionen ab und gewährt 32-Bit-Anwendungen Zugriff auf Systemressourcen wie Speicher und Dateien. WOW64 bietet auch eine 32-Bit-Umgebungsemulation für Anwendungen, die auf architekturspezifische x86-Funktionen wie Adressraum und Register angewiesen sind.

Wenn eine 32-Bit-Anwendung auf einem 64-Bit-Windows ausgeführt wird, leitet WOW64 automatisch das Dateisystem und die Registrierung um, um die Anwendungskompatibilität zu gewährleisten. Dies bedeutet, dass 32-Bit-Anwendungen im Verzeichnis "Programme (x86)" anstelle von "Programme" angezeigt werden und ihre Einstellungen im Registrierungsschlüssel "Wow6432Node" anstelle des standardmäßigen Registrierungsschlüssels gespeichert werden.

  • Ermöglicht die Kompatibilität von 32-Bit-Anwendungen mit 64-Bit-Windows.
  • Ermöglicht die Verwendung von 32-Bit-Treibern unter 64-Bit-Windows.
  • Verbraucht zusätzliche Systemressourcen, um eine 32-Bit-Umgebung zu emulieren.
  • Nicht alle 32-Bit-Anwendungen sind möglicherweise vollständig mit WOW64 kompatibel.

Mit der WOW64-Unterstützung können Benutzer von 64-Bit-Windows viele 32-Bit-Anwendungen ausführen und verwenden, ohne dass virtuelle Maschinen oder andere Hilfstechnologien benötigt werden.

Virtuelle Umgebung

64-Bit-Windows enthält ein Subsystem namens Windows on Windows 64 (WoW64), das die Ausführung von 32-Bit-Programmen steuert. WoW64 erzeugt die Illusion, dass 32-Bit-Programme in einer eigenen 32-Bit-Umgebung ausgeführt werden, obwohl sie tatsächlich in einer 64-Bit-Umgebung ausgeführt werden. Dies ermöglicht es solchen Programmen, ohne Probleme auf einem 64-Bit-Betriebssystem zu laufen und alle seine Funktionen zu nutzen.

Die virtuelle Umgebung bietet auch Kompatibilität mit bereits vorhandenen 32-Bit-Anwendungen, die möglicherweise nicht mit einer 64-Bit-Umgebung kompatibel sind. WoW64 stellt eine Umgebung bereit, die alle Aufrufe an Bibliotheken und Systemfunktionen von 32-Bit-Anwendungen an ihre 64-Bit-Gegenstücke weiterleitet.

Diese virtuelle Umgebung ermöglicht es einem 64-Bit-Betriebssystem, Programme für die 32-Bit-Architektur zu unterstützen und auszuführen, was die Benutzererfahrung erheblich verbessert und die Abwärtskompatibilität mit älteren Anwendungen gewährleistet.

Registry-System

Das Registrierungssystem in Windows spielt eine wichtige Rolle bei der Verwaltung der Betriebssystemkonfiguration. Es speichert Informationen zu Programmeinstellungen und -einstellungen sowie zu Systemkomponenten. Eine Registrierung ist eine hierarchische Struktur, die aus Schlüsseln und Werten besteht.

Einer der wichtigsten Aspekte des Registrierungssystems ist die Unterstützung von 32-Bit-Programmen auf einer 64-Bit-Version von Windows. Anwendungen, die für 32-Bit-Betriebssysteme erstellt wurden, sollten auch auf 64-Bit-Versionen von Windows ausgeführt werden, ohne dass eine Neukompilierung erforderlich ist.

Um die Kompatibilität mit 32-Bit-Programmen auf 64-Bit-Systemen zu gewährleisten, verwendet Windows eine Funktion wie das Registrierungsdateisystem für 32-Bit-Anwendungen. Dies bedeutet, dass 32-Bit-Anwendungen auf 64-Bit-Systemen einen separaten Registrierungsbereich verwenden, der ihre Einstellungen und Einstellungen enthält.

Wenn eine 32-Bit-Anwendung auf einem 64-Bit-Windows ausgeführt wird, zeigt das Betriebssystem die entsprechenden Registrierungsschlüssel für diese Anwendung an. Auf diese Weise können Anwendungen auf ihre Einstellungen und Einstellungen zugreifen, als würden sie auf einem 32-Bit-System ausgeführt.

Diese Lösung bietet Kompatibilität und ermöglicht es 32-Bit-Anwendungen, erfolgreich auf 64-Bit-Windows-Systemen zu laufen. Anwendungen müssen ihren Quellcode nicht neu schreiben oder ändern, um auf einer 64-Bit-Version des Betriebssystems ausgeführt zu werden.

Windows-on-Windows-Bibliotheken (Wow64)

Windows-on-Windows-Bibliotheken (Wow64) sind eine spezielle Kompatibilitätsschicht, die von der 64-Bit-Version von Windows für die Arbeit mit 32-Bit-Programmen verwendet wird. Wow64 bietet die Spiegelung von 32-Bit-Anwendungen, sodass sie ohne Änderungen auf einem 64-Bit-Windows-Betriebssystem ausgeführt werden können.

Wenn ein 32-Bit-Programm auf einer 64-Bit-Version von Windows ausgeführt wird, erstellt Wow64 eine virtuelle Umgebung, in der das Programm ausgeführt werden kann. In dieser Umgebung wird jeder Anwendung ein eigener virtueller Adressraum zugewiesen, sodass Programme ohne Konflikte mit anderen Anwendungen auf den Speicher zugreifen können.

Wow64 bietet auch Kompatibilität mit den von diesen Anwendungen verwendeten 32-Bit-Bibliotheken. Wenn ein Programm auf eine Bibliothek zugreift, leitet Wow64 die Anforderung an die entsprechende 32-Bit-Version der Bibliothek weiter. Dies liegt an der integrierten Weiterleitungstabelle, die Wow64 automatisch unterstützt.

Die Umleitungstabelle enthält Informationen zu den 32-Bit-Bibliotheken, die auf einem 64-Bit-System verfügbar sind. Wenn ein Programm eine Funktion aus einer Bibliothek aufruft, sucht Wow64 in der Umleitungstabelle nach der entsprechenden 32-Bit-Bibliothek und navigiert zu dieser.

Dieser Anzeigemodus ermöglicht es einer 64-Bit-Version von Windows, 32-Bit-Programme parallel zu 64-Bit-Anwendungen auszuführen, um sicherzustellen, dass sie kompatibel sind und auf modernen 64-Bit-Betriebssystemen ordnungsgemäß funktionieren.

32-Bit-ProgrammWindows-on-Windows32-Bit-Bibliothek
32-Bit-ProgrammWindows-on-Windows32-Bit-Bibliothek

Anweisungen emulieren

Das 64-Bit-Windows-Betriebssystem unterstützt die Ausführung von Programmen, die sowohl für die 32-Bit- als auch für die 64-Bit-Architektur geschrieben wurden. Da jedoch 64-Bit-Prozessoren Daten verarbeiten und Anweisungen anders ausführen als 32-Bit-Prozessoren, müssen bestimmte Konvertierungen durchgeführt werden, damit 32-Bit-Programme auf einem 64-Bit-System ausgeführt werden können.

Wenn Sie ein 32-Bit-Programm auf einem 64-Bit-Betriebssystem ausführen, emuliert der Prozessor die Anweisungen. Dies bedeutet, dass der Prozessor die für eine 32-Bit-Architektur geschriebenen Anweisungen konvertiert, damit sie auf einem 64-Bit-Prozessor ausgeführt werden können.

Der Prozessor emuliert Anweisungen mithilfe einer speziellen Softwareschicht, die als "virtueller Prozessor" bezeichnet wird. Ein virtueller Prozessor übersetzt die Anweisungen eines 32-Bit-Programms in Anweisungen, die für einen 64-Bit-Prozessor verständlich sind.

Die Anweisungsemulation ermöglicht die Kompatibilität zwischen 32-Bit-Programmen und einem 64-Bit-Betriebssystem, sodass Benutzer ältere Anwendungen auf neuen Computern mit 64-Bit-Prozessoren ausführen können. Dadurch erhalten Benutzer zusätzliche Flexibilität und die Möglichkeit, eine Vielzahl von Programmen auf ihren Geräten zu verwenden.

Die Anweisungsemulation kann jedoch zu Leistungseinbußen führen, da der Prozessor zusätzliche Zeit benötigt, um die Anweisungstransformationen auszuführen. Dies ist besonders bemerkenswert, wenn große oder komplexe Programme, die für eine 32-Bit-Architektur geschrieben wurden, auf einem 64-Bit-System ausgeführt werden.