ARM64'te Windows uygulamalarını başlatmak için bir projeyi akşamdan kalma

Wine-Android özellikli görüntü

Şarap projesi geliştiricileri Stefan Dösinger ve André Hentschel Hangover öykünücüsünün ilk genel sürümünün duyurusunu yaptık, o 32 bit ve 64 bit Windows uygulamalarının çalıştırılmasına izin verir x86 ve x86_64 mimarileri için tasarlanmıştır ARM64 (Aarch64) mimarisine dayalı Linux ve Android ortamlarında.

Wine'ı sistem çağrısı seviyesinde emülasyon modunda QEMU kullanarak minimum sistem ortamında çalıştırmanın aksine (ana sistemle aynı çekirdeği kullanarak).

Hangover emülatörü hakkında

proje Akşamdan kalma, kullanıcının önemli ölçüde daha yüksek bir performansa sahip olmasını sağlar. Bu projenin ivmesi öykünme katmanının Win32 / Win64 API düzeyine aktarılmasıyla elde edilir, Win32 / Win64 API post öykünmesi ile düzenli sistem çağrılarını öykünmek yerine bunlara dayalı.
Şu anda proje, kullanıcının yalnızca Win64 ve Win32 API'lerini kullanan basit uygulamaları ve oyunları çalıştırmasına izin veriyor.

Linux için Direct3D desteği uygulandı ve bu, Wine'da OpenGL ES için eksik destek nedeniyle Android için henüz mevcut değil.

Hata ayıklayıcı desteği mevcut değildir ve istisna işlemenin bilinen hataları vardır. Bu nedenlerden dolayı, kopya koruma ve hile önleme sistemleri, Wine'ın normal sürümlerinden daha kötü durumda olabilir.

Genel olarak, 64 bit uygulamaların 32 bit uygulamalardan daha iyi durumda olması beklenebilir çünkü herhangi bir tür veri yapısı gerekmez.
Çalışmayı garanti etmek için, çeşitli kitaplıklar ve DLL katmanları ile desteklenen düzenli bir Wine kurulumu kullanılır.
Linux ortamında, QEMU Wine dizinindeyken ("C: \ x86 \ qemu-x86_64.exe.so") Windows uygulamaları otomatik olarak çalışır.

Oysa Android'de, yürütmeyi gerçekleştirmek için cmd yardımcı programının kullanılması önerilir.
4 GB'ın altındaki her adres rezerve edilirken adres alanı 4 GB ile sınırlıdır.

Çoğu büyük Wine kitaplığı önceden 4 GB'ın üzerinde yüklenmiştir yukarıdaki alanı 4 GB'nin altında olabildiğince boş tutmak için. Bunun dezavantajı, yeni bir işleme başlamanın yaklaşık 2 saniye sürmesidir.

şarap-4.0

ARM64 için Hangover a Wine

Wine, her işlemi 64 bitlik bir işlem olarak görür, bu nedenle WoW64 katmanı etkin değildir. Bu, saf 32-bit veya saf 64-bit uygulamalar için iyi çalışacaktır, ancak C: \ windows \ system32 ve C: \ windows \ syswow64 arasında bir ayrım bekleyen karma uygulamalarda sorunlara neden olacaktır.

32 bit (x86) Windows uygulamalarının piyasaya sürülmesiyle ilgili olarak, uygulama ile Wine arasında iletilen yapıların çeviri düzeyinde işlenir (Windows'taki LLP64 modeli, 32 bit ve 64 bit WinAPI arasındaki yapıların temel uyumluluğunu korur).

32-bit Windows uygulamalarını çalıştırmak için 64-bit Wine derlemeleri kullanılır ve her işlem önce 64-bit olarak ele alınır.

Ana bilgisayar tarafında, yalnızca ARM64 ve x86_64 mimarileri desteklenir, ancak kod birleştirilir ve projenin çok fazla çaba harcamadan en küçüğünden en büyüğüne (küçük-endian) bayt sırasına göre diğer mimarilere taşınmasına izin verir.

Hala cilalanacak çok şey var

Akşamdan kalmanın performansı şu anda arzulanan çok şey bırakıyor. E'den beriAna darboğaz, QEMU'nun ürettiği kodun performansıdır.

Sin ambargo, Android Nvidia Shield ile bir TV cihazında çalışırken. Performans, 2000'li yılların oyunlarını çalıştırmak için yeterli.

Hangover'da test edilen uygulamalar şunları içerir: Notepad ++, ANNO 1602, Age of Wonders, Warhammer 40k: Dawn of War, The Settlers II 10th Anniversary, Prince of Persia 3D, Worms 2 ve Worms Armageddon. DirectX 9 SDK örnekleri de kabul edilebilir hızlarda çalışır.

Sürüm, Hangover 4.0 sürüm numarasında gösterilen Wine 0.4.0 temel koduna dayanmaktadır. Emülasyon katmanı, QEMU projesine dayanmaktadır.


Yorumunuzu bırakın

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

*

*

  1. Verilerden sorumlu: AB Internet Networks 2008 SL
  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.