Die neuen Versionen von Box86 und Box64 wurden bereits veröffentlicht

Vor kurzem die Freisetzung von die neuen Versionen der Box86 0.2.6 und Box64 0.1.8 Emulatoren. Die Projekte werden synchron vom selben Entwicklungsteam entwickelt.

Box86 ist auf die Ausführung von 86-Bit-x32-Anwendungen beschränkt (z. B. Spiele) auf Nicht-x86-Linux-Systemen wie ARM (das Hostsystem muss 32-Bit-Little-Endian sein). Daher ist ein 32-Bit-Subsystem erforderlich, um Box86 auszuführen und zu kompilieren. Box86 ist auf reinen 64-Bit-Systemen nutzlos. Außerdem benötigen Sie eine 32-Bit-Toolchain, um Box86 zu kompilieren.

Da Box86 die nativen Versionen einiger "System"-Bibliotheken wie libc, libm, SDL und OpenGL verwendet, ist es einfach zu integrieren und mit den meisten Anwendungen zu verwenden, und die Leistung kann in vielen Fällen überraschend hoch sein.

Gleiches gilt für Box64, nur dass solches und erlaubt Ausführen von ausführbaren 64-Bit-Dateien. Das Projekt widmet der Organisation der Veröffentlichung von Spielanwendungen große Aufmerksamkeit, einschließlich der Möglichkeit, Windows-Builds über Wine und Proton zu veröffentlichen.

Ein Merkmal des Projekts ist die Verwendung eines hybriden Ausführungsmodells, bei der die Emulation nur auf den Maschinencode der Anwendung selbst und spezifische Bibliotheken angewendet wird. Generische Systembibliotheken, darunter libc, libm, GTK, SDL, Vulkan und OpenGL, werden auf den Zielplattformen durch native Varianten ersetzt. Daher werden die Bibliotheksaufrufe ohne Emulation ausgeführt, was eine deutliche Performance-Steigerung ermöglicht.

Emulieren von Code, der keine nativen Überschreibungen hats für die Zielplattform erfolgt mithilfe der Technik der dynamischen Neukompilierung (DynaRec) von einem Maschinenbefehlssatz zum anderen. Im Vergleich zum Interpretieren von Maschinenanweisungen zeigt die dynamische Neukompilierung eine 5- bis 10-mal bessere Leistung.

bei Leistungstests, wenn es auf den Plattformen Armhf und Aarch64 ausgeführt wird, Die Emulatoren Box86 und Box64 übertrafen die QEMU- und FEX-emu-Projekte deutlich und in einigen Tests (glmark2, openarena) erreichten sie eine Leistung, die der Ausführung einer nativen Assembly auf der Zielplattform entspricht.

In Bezug auf die Kompatibilität von Bewerbungen, dVon den 165 getesteten Spielen waren etwa 70 % erfolgreich. Etwa 10 % mehr Arbeit, aber mit gewissen Vorbehalten und Einschränkungen.

Von den Spielen, bei denen Probleme festgestellt werden, werden Spiele genannt, die auf der Unity3D-Engine basieren, die an das Mono-Paket gebunden ist, dessen Emulation aufgrund der in Mono verwendeten JIT-Kompilierung immer noch nicht immer funktioniert und auch recht hohe Grafikanforderungen stellt das kann auf ARM-Boards nicht immer erreicht werden. Der Ersatz von GTK-Anwendungsbibliotheken ist derzeit auf GTK2 beschränkt (der GTK3/4-Ersatz ist nicht vollständig implementiert).

Wie für wichtigsten Änderungen in den neuen Versionen, wird Folgendes hervorgehoben:

  • Link für die Vulkan-Bibliothek hinzugefügt. Vulkan- und DXVK-Grafik-API-Unterstützung hinzugefügt (Implementierung von DXGI, Direct3D 9, 10 und 11 über Vulkan).
  • Verbesserte Bindungen für GTK-Bibliotheken. Bindungen für Gstreamer und Bibliotheken hinzugefügt, die häufig in GTK-Anwendungen verwendet werden.
  • Erste Unterstützung (bisher nur im Interpreter-Modus) für RISC-V- und PPC64LE-Architekturen hinzugefügt.
  • Es wurden Fehlerbehebungen vorgenommen, um die Kompatibilität mit SteamPlay und dem Proton Layer zu verbessern. Es ist möglich, viele Linux- und Windows-Spiele von Steam auf AArch64-Boards wie Raspberry Pi 3 und 4 auszuführen.
  • Verbesserte Speicherverwaltung, mmap-Verhalten und Überwachung auf Speicherschutzverletzungen.
  • Verbesserte Unterstützung für den Clone-Systemaufruf in libc. Unterstützung für neue Systemaufrufe hinzugefügt.
  • In der dynamischen Rekompilierungs-Engine wurde die Arbeit mit SSE/x87-Registrierungen verbessert, Unterstützung für neue Maschinencodes wurde hinzugefügt, Gleitkomma- und Doppelkonvertierungen wurden optimiert, interne Verzweigungsverarbeitung wurde verbessert, vereinfachte Unterstützung für neue Architekturen.
  • Verbesserter ELF-Dateilader.

Wenn Sie mehr darüber erfahren möchten, können Sie schließlich die Details einsehen im folgenden Link.


Hinterlasse einen Kommentar

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

*

*

  1. Verantwortlich für die Daten: Miguel Ángel Gatón
  2. Zweck der Daten: Kontrolle von SPAM, Kommentarverwaltung.
  3. Legitimation: Ihre Zustimmung
  4. Übermittlung der Daten: Die Daten werden nur durch gesetzliche Verpflichtung an Dritte weitergegeben.
  5. Datenspeicherung: Von Occentus Networks (EU) gehostete Datenbank
  6. Rechte: Sie können Ihre Informationen jederzeit einschränken, wiederherstellen und löschen.