Hangover projek untuk melancarkan aplikasi Windows pada ARM64

Wain-Android-ciri-gambar

Pemaju projek wain Stefan Dösinger dan André Hentschel telah membuat pengumuman versi awam pertama emulator Hangover, bahawa membolehkan menjalankan aplikasi Windows 32-bit dan 64-bit direka untuk seni bina x86 dan x86_64 dalam persekitaran Linux dan Android berdasarkan seni bina ARM64 (Aarch64).

Tidak seperti menjalankan Wine dengan persekitaran sistem yang minimum menggunakan QEMU dalam mod emulasi pada tahap panggilan sistem (menggunakan kernel yang sama dengan sistem utama).

Mengenai emulator Hangover

Projek itu Hangover membolehkan pengguna dapat memperoleh prestasi yang jauh lebih tinggi. Pecutan projek ini dicapai dengan memindahkan lapisan emulasi ke tahap API Win32 / Win64, bukannya meniru panggilan sistem biasa dengan emulasi pasca API Win32 / Win64 berdasarkannya.
Pada masa ini, projek ini membolehkan pengguna menjalankan hanya aplikasi dan permainan sederhana yang menggunakan Win64 dan Win32 API.

Untuk Linux, sokongan Direct3D telah dilaksanakan, yang belum tersedia untuk Android kerana sokongan yang tidak lengkap untuk OpenGL ES di Wine.

Sokongan debugger tidak ada dan pengendalian pengecualian telah mengetahui pepijat. Oleh kerana sebab-sebab ini, sistem perlindungan salinan dan anti-cheat cenderung dalam keadaan yang lebih buruk daripada versi Wain biasa.

Secara umum, aplikasi 64-bit diharapkan dapat dalam bentuk yang lebih baik daripada aplikasi 32-bit kerana tidak memerlukan struktur data apa pun.
Untuk menjamin pekerjaan itu, pemasangan Wain biasa digunakan, ditambah dengan pelbagai perpustakaan dan lapisan DLL.
Dalam persekitaran Linux, aplikasi Windows berjalan secara automatik ketika QEMU berada di direktori Wine ("C: \ x86 \ qemu-x86_64.exe.so").

Sedangkan, pada Android, diusulkan untuk menggunakan utilitas cmd untuk melakukan pelaksanaan.
Ruang alamat terhad kepada 4GB ketika menempah setiap alamat di bawah 4GB.

Sebilangan besar perpustakaan Anggur utama sebelum ini dimuat melebihi 4GB untuk mengekalkan ruang di atas di bawah 4 GB sebebas mungkin. Kelemahannya ialah memulakan proses baru memerlukan masa sekitar 2 saat.

wain-4.0

Hangover Anggur untuk ARM64

Wain melihat setiap proses sebagai proses 64-bit, jadi lapisan WoW64-nya tidak aktif. Ini akan berfungsi dengan baik untuk aplikasi 32-bit tulen atau 64-bit tulen, tetapi akan menimbulkan masalah untuk aplikasi campuran yang mengharapkan perbezaan antara, misalnya, C: \ windows \ system32 dan C: \ windows \ syswow64.

Mengenai pelepasan aplikasi Windows 32-bit (x86), diproses pada tahap terjemahan struktur yang dihantar antara aplikasi dan Wain (Model LLP64 pada Windows mengekalkan keserasian asas kerangka kerja antara WinAPI 32-bit dan 64-bit).

Untuk menjalankan aplikasi Windows 32-bit, kumpulan Wain 64-bit digunakan dan setiap proses pertama kali dianggap sebagai 64-bit.

Di sisi hos, hanya arkitek ARM64 dan x86_64 yang disokong, tetapi kodnya disatukan, yang membolehkan projek dipindahkan ke arkitek lain mengikut urutan bait dari yang termuda ke yang paling tua (endian kecil) tanpa banyak usaha.

Masih banyak yang perlu digilap

Persembahan Hangover pada masa ini tidak banyak yang diharapkan. Sejak eMasalah utama adalah prestasi kod yang dihasilkan oleh QEMU.

Walau bagaimanapun, semasa berjalan pada peranti TV dengan Android Nvidia Shield. Persembahannya cukup untuk menjalankan permainan dari tahun 2000-an.

Aplikasi yang diuji di Hangover termasuk Notepad ++, ANNO 1602, Age of Wonders, Warhammer 40k: Dawn of War, The Settlers II 10th Anniversary, Prince of Persia 3D, Worms 2, dan Worms Armageddon. Contoh DirectX 9 SDK juga berjalan pada kelajuan yang boleh diterima.

Pelepasan ini berdasarkan kod asas Wine 4.0, yang tercermin dalam nombor versi Hangover 0.4.0. Lapisan emulasi berdasarkan projek QEMU.


Tinggalkan komen anda

Alamat email anda tidak akan disiarkan. Ruangan yang diperlukan ditanda dengan *

*

*

  1. Bertanggungjawab untuk data: AB Internet Networks 2008 SL
  2. Tujuan data: Mengendalikan SPAM, pengurusan komen.
  3. Perundangan: Persetujuan anda
  4. Komunikasi data: Data tidak akan disampaikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Pangkalan data yang dihoskan oleh Occentus Networks (EU)
  6. Hak: Pada bila-bila masa anda boleh menghadkan, memulihkan dan menghapus maklumat anda.