Box86 ve Box64'ün yeni sürümleri zaten piyasaya sürüldü

geçenlerde serbest bırakılması yeni versiyonları Box86 0.2.6 ve Box64 0.1.8 öykünücüleri. Projeler aynı geliştirme ekibi tarafından senkronize olarak geliştirilir.

Box86, 86-bit x32 uygulamalarını çalıştırmakla sınırlıdır (oyunlar gibi) ARM gibi x86 olmayan Linux sistemlerinde (ana sistem 32-bit küçük endian olmalıdır). Bu nedenle, Box32'yı çalıştırmak ve derlemek için 86 bitlik bir alt sistem gerekir. Box86, yalnızca 64 bit sistemlerde işe yaramaz. Ayrıca Box32'yı derlemek için 86 bitlik bir araç zincirine ihtiyacınız var.

Box86, libc, libm, SDL ve OpenGL gibi bazı "sistem" kitaplıklarının yerel sürümlerini kullandığından, çoğu uygulamayla entegrasyonu ve kullanımı kolaydır ve birçok durumda performans şaşırtıcı derecede yüksek olabilir.

Aynısı Box64 için de geçerli, sadece böyle ve izin verir 64 bit yürütülebilir dosyaları çalıştır. Proje, Windows yapılarını Wine ve Proton aracılığıyla yayınlama yeteneği de dahil olmak üzere oyun uygulamalarının yayınlanmasının organizasyonuna büyük önem veriyor.

Projenin bir özelliği, hibrit bir yürütme modelinin kullanılmasıdır.öykünmenin yalnızca uygulamanın kendisinin ve belirli kitaplıkların makine koduna uygulandığı . libc, libm, GTK, SDL, Vulkan ve OpenGL dahil olmak üzere genel sistem kitaplıkları, hedef platformlardaki yerel varyantlarla değiştirilir. Bu nedenle, kitaplık çağrıları öykünme olmadan yürütülür ve bu da önemli bir performans artışı sağlar.

Yerel geçersiz kılmaları olmayan kod öykünmesiHedef platform için s, bir dizi makine talimatından diğerine dinamik yeniden derleme (DynaRec) tekniği kullanılarak yapılır. Makine talimatlarını yorumlamaya kıyasla, dinamik yeniden derleme 5 ila 10 kat daha iyi performans gösterir.

performans testlerinde, Armhf ve Aarch64 platformlarında çalışırken, Box86 ve Box64 emülatörleri, QEMU ve FEX-emu projelerini önemli ölçüde geride bıraktı ve bazı testlerde (glmark2, openarena) hedef platforma özgü bir derleme çalıştırmayla aynı performansı elde ettiler.

Uyumluluk açısından uygulamaların, dTest edilen 165 oyunun yaklaşık %70'i başarılı oldu. Yaklaşık %10 daha fazla iş, ancak belirli çekinceler ve kısıtlamalarla.

Sorunların belirtildiği oyunlardan, Mono paketine bağlı, Mono'da kullanılan JIT derlemesi nedeniyle öykünmesi hala her zaman çalışmayan ve ayrıca grafik gereksinimleri oldukça yüksek olan Unity3D motoruna dayalı oyunlardan bahsediliyor. bu her zaman ARM panolarında elde edilemez. GTK uygulama kitaplıklarının değiştirilmesi şu anda GTK2 ile sınırlıdır (GTK3/4 değişimi tam olarak uygulanmamıştır).

Gelince yeni sürümlerdeki ana değişiklikler, aşağıdakiler vurgulanır:

  • Vulkan kütüphanesi için bağlantı eklendi. Vulkan ve DXVK grafik API desteği eklendi (Vulkan üzerinden DXGI, Direct3D 9, 10 ve 11'in uygulanması).
  • GTK kitaplıkları için geliştirilmiş bağlamalar. GTK uygulamalarında yaygın olarak kullanılan gstreamer ve kitaplıklar için bağlamalar eklendi.
  • RISC-V ve PPC64LE mimarileri için başlangıç ​​desteği (şimdiye kadar yalnızca yorumlama modu) eklendi.
  • SteamPlay ve Proton Katmanı ile uyumluluğu iyileştirmek için hata düzeltmeleri yapıldı. Raspberry Pi 64 ve 3 gibi AArch4 panolarında Steam'den birçok Linux ve Windows oyununu çalıştırmak mümkündür.
  • İyileştirilmiş bellek yönetimi, mmap davranışı ve bellek koruma ihlalleri için izleme.
  • libc'de klon sistem çağrısı için geliştirilmiş destek. Yeni sistem çağrıları için destek eklendi.
  • Dinamik yeniden derleme motorunda, SSE/x87 kayıtları ile çalışma iyileştirildi, yeni makine kodları için destek eklendi, kayan nokta ve çift dönüşümler optimize edildi, dahili dal işleme geliştirildi, Yeni mimariler için basitleştirilmiş destek.
  • Geliştirilmiş ELF dosya yükleyici.

Son olarak, bu konuda daha fazla bilgi edinmek istiyorsanız, ayrıntılara başvurabilirsiniz. Aşağıdaki bağlantıda.


Yorumunuzu bırakın

E-posta hesabınız yayınlanmayacak. Gerekli alanlar ile işaretlenmiştir *

*

*

  1. Verilerden sorumlu: Miguel Ángel Gatón
  2. Verilerin amacı: Kontrol SPAM, yorum yönetimi.
  3. Meşruiyet: Onayınız
  4. Verilerin iletilmesi: Veriler, yasal zorunluluk dışında üçüncü kişilere iletilmeyecektir.
  5. Veri depolama: Occentus Networks (AB) tarafından barındırılan veritabanı
  6. Haklar: Bilgilerinizi istediğiniz zaman sınırlayabilir, kurtarabilir ve silebilirsiniz.