Rilascio dell'emulatore Box64 0.3.0, che consente di eseguire giochi x86 su sistemi ARM64 e RISC-V

È stata pubblicata la versione dell'emulatore Box64 0.3.0, progettata per eseguire programmi Linux compilati per architettura x86_64 su hardware con processori ARM64, RISC-V e Loongarch64. Il progetto si concentra fortemente sull'organizzazione dell'esecuzione di applicazioni di gioco e offre la possibilità di eseguire build di Windows tramite wine e Proton. I codici sorgente del progetto sono scritti in linguaggio C e sono distribuiti sotto licenza MIT.

Una caratteristica distintiva del progetto è l'uso di un modello di esecuzione ibrido, in cui l'emulazione viene applicata solo al codice macchina dell'applicazione e alle librerie specifiche. Le librerie di sistema standard, tra cui libc, libm, GTK, SDL, Vulkan e OpenGL, vengono sostituite con versioni native per le piattaforme target. In questo modo, le chiamate di libreria vengono eseguite senza emulazione, consentendo un notevole aumento delle prestazioni.

L'emulazione del codice, per il quale non esistono sostituti nativi per la piattaforma di destinazione, viene eseguita utilizzando la tecnica della ricompilazione dinamica (DynaRec) da un insieme di istruzioni macchina a un altro. Rispetto all'interpretazione delle istruzioni macchina, la ricompilazione dinamica dimostra prestazioni superiori di 5-10 volte.

Nella nuova versione:

  • Implementato il supporto per le estensioni della CPU AVX, AVX2, BMI1, BMI2, ADX, FMA, F16C e RDRAND.
  • Aggiunta la variabile d'ambiente BOX64_AVX, impostando 1 si abilita il supporto per AVX, BMI1, F16C e VAES, mentre impostando 2 si attiva AVX2, BMI2, FMA, ADX, VPCLMULQDQ e RDRAND.
  • Aggiunto il supporto per la ricompilazione dinamica (DynaRec) di AVX, AVX2 e istruzioni simili in un formato basato sulle istruzioni NEON, disponibili nei CPU basati su architettura ARM64.
  • Aggiunto il supporto iniziale per la ricompilazione delle istruzioni SIMD in istruzioni RVV su sistemi RISC-V.
  • Ottimizzato il meccanismo DynaRec, aggiunto il supporto per nuovi codici operativi per RISC-V e Loongarch64.
  • Aggiornato l'elenco dei codici operativi CPUID, per impostazione predefinita, invece di Pentium IV, attraverso CPUID ora viene restituito il CPU della serie Haswell.
  • Aggiunto il supporto per Wayland e fornita la possibilità di ricompilazione dinamica per le librerie collegate a Wayland, il che ha permesso di ottenere la compatibilità con Wine-wayland.
  • Espanso il numero di giochi supportati, ad esempio, è stata aggiunta la compatibilità con il gioco Death Stranding. Assicurato il rilevamento dell'uso della libreria UnityPlayer.dll nei programmi avviati in Wine e impostato automaticamente il parametro BOX64_DYNAREC_STRONGMEM=1.

Fonte: opennet.ru

Acquista un hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista un hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster