Versi baru Box86 dan Box64 telah dirilis

Baru-baru ini rilis versi baru dari Box86 0.2.6 dan Box64 0.1.8 emulator. Proyek dikembangkan secara sinkron oleh tim pengembangan yang sama.

Box86 terbatas untuk menjalankan aplikasi x86 32-bit (seperti game) pada sistem Linux non-x86, seperti ARM (sistem host harus little-endian 32-bit). Oleh karena itu, subsistem 32-bit diperlukan untuk menjalankan dan mengkompilasi Box86. Box86 tidak berguna pada sistem 64-bit saja. Selain itu, Anda memerlukan rantai alat 32-bit untuk mengompilasi Box86.

Karena Box86 menggunakan versi asli dari beberapa pustaka "sistem", seperti libc, libm, SDL, dan OpenGL, BoxXNUMX mudah untuk diintegrasikan dan digunakan dengan sebagian besar aplikasi, dan kinerjanya bisa sangat tinggi dalam banyak kasus.

Hal yang sama berlaku untuk Box64, hanya itu dan memungkinkan jalankan executable 64 bit. Proyek ini memberikan perhatian besar pada organisasi rilis aplikasi game, termasuk kemampuan untuk merilis build Windows melalui Wine dan Proton.

Fitur dari proyek ini adalah penggunaan model eksekusi hybrid, di mana emulasi hanya diterapkan ke kode mesin aplikasi itu sendiri dan pustaka tertentu. Pustaka sistem generik, termasuk libc, libm, GTK, SDL, Vulkan, dan OpenGL, diganti dengan varian asli pada platform target. Oleh karena itu, panggilan perpustakaan dijalankan tanpa emulasi, yang memungkinkan peningkatan kinerja yang signifikan.

Meniru kode yang tidak memiliki override aslis untuk platform target dilakukan dengan menggunakan teknik kompilasi ulang dinamis (DynaRec) dari satu set instruksi mesin ke yang lain. Dibandingkan dengan menafsirkan instruksi mesin, kompilasi ulang dinamis menunjukkan kinerja 5 hingga 10 kali lebih baik.

dalam tes kinerja, saat berjalan di platform Armhf dan Aarch64, Emulator Box86 dan Box64 secara signifikan mengungguli proyek QEMU dan FEX-emu dan dalam beberapa pengujian (glmark2, openarena) mereka mencapai kinerja yang identik dengan menjalankan perakitan asli ke platform target.

Dalam hal kompatibilitas aplikasi, dDari 165 game yang diuji, sekitar 70% berhasil. Sekitar 10% lebih banyak pekerjaan, tetapi dengan reservasi dan batasan tertentu.

Dari game yang bermasalah, disebutkan game berbasis mesin Unity3D, yang terkait dengan paket Mono, yang emulasinya masih tidak selalu berfungsi karena kompilasi JIT yang digunakan di Mono, dan juga memiliki persyaratan grafis yang cukup tinggi. yang tidak selalu dapat dicapai pada papan ARM. Penggantian library aplikasi GTK saat ini terbatas pada GTK2 (penggantian GTK3/4 tidak sepenuhnya diterapkan).

Adapun perubahan utama dalam rilis baru, berikut ini disorot:

  • Menambahkan tautan untuk perpustakaan Vulkan. Menambahkan dukungan API grafis Vulkan dan DXVK (implementasi DXGI, Direct3D 9, 10 dan 11 melalui Vulkan).
  • Binding yang ditingkatkan untuk pustaka GTK. Menambahkan binding untuk gstreamer dan library yang biasa digunakan dalam aplikasi GTK.
  • Menambahkan dukungan awal (sejauh ini hanya mode interpretasi) untuk arsitektur RISC-V dan PPC64LE.
  • Perbaikan bug telah dilakukan untuk meningkatkan kompatibilitas dengan SteamPlay dan Proton Layer. Dimungkinkan untuk menjalankan banyak game Linux dan Windows dari Steam di papan AArch64 seperti Raspberry Pi 3 dan 4.
  • Peningkatan manajemen memori, perilaku mmap, dan pemantauan pelanggaran perlindungan memori.
  • Peningkatan dukungan untuk panggilan sistem klon di libc. Menambahkan dukungan untuk panggilan sistem baru.
  • Di mesin kompilasi ulang dinamis, bekerja dengan pendaftar SSE/x87 telah ditingkatkan, dukungan untuk kode mesin baru telah ditambahkan, konversi float dan ganda telah dioptimalkan, pemrosesan cabang internal telah ditingkatkan, Dukungan yang disederhanakan untuk arsitektur baru.
  • Pemuat file ELF yang ditingkatkan.

Akhirnya, jika Anda tertarik untuk mengetahui lebih banyak tentangnya, Anda dapat berkonsultasi dengan detailnya Di tautan berikut.


tinggalkan Komentar Anda

Alamat email Anda tidak akan dipublikasikan. Bidang yang harus diisi ditandai dengan *

*

*

  1. Penanggung jawab data: Miguel Ángel Gatón
  2. Tujuan data: Mengontrol SPAM, manajemen komentar.
  3. Legitimasi: Persetujuan Anda
  4. Komunikasi data: Data tidak akan dikomunikasikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Basis data dihosting oleh Occentus Networks (UE)
  6. Hak: Anda dapat membatasi, memulihkan, dan menghapus informasi Anda kapan saja.