Hangover një projekt për të nisur aplikacionet e Windows në ARM64

Verë-Android-me-paraqitje-imazh

Zhvilluesit e projekteve të verës Stefan Dösinger dhe André Hentschel kanë bërë njoftimin e versionit të parë publik të emulatorit Hangover,lejon ekzekutimin e aplikacioneve 32-bit dhe 64-bit të Windows projektuar për arkitekturat x86 dhe x86_64 në mjediset Linux dhe Android bazuar në arkitekturën ARM64 (Aarch64).

Në krahasim me përdorimin e Verës me një mjedis minimal të sistemit duke përdorur QEMU në mënyrën e emulimit në nivelin e thirrjes së sistemit (duke përdorur të njëjtën bërthamë si sistemi kryesor).

Rreth emulatorit Hangover

El Proyecto Hangover lejon përdoruesin të jetë në gjendje të ketë një performancë dukshëm më të lartë. Përshpejtimi i këtij projekti arrihet duke transferuar shtresën e emulimit në nivelin Win32 / Win64 API, në vend të imitimit të thirrjeve të rregullta të sistemit me imitimin postues Win32 / Win64 API bazuar në to.
Aktualisht, projekti lejon përdoruesin të ekzekutojë vetëm aplikacione dhe lojëra të thjeshta që përdorin API-t e Win64 dhe Win32.

Për Linux, mbështetja për Direct3D është implementuar, e cila nuk është ende e disponueshme për Android për shkak të mbështetjes jo të plotë për OpenGL ES në Wine.

Mbështetja e korrigjuesit është inekzistente dhe trajtimi i përjashtimeve ka njohur defekte. Për shkak të këtyre arsyeve, sistemet e mbrojtjes ndaj kopjimit dhe anti-mashtrimit ka të ngjarë të jenë në gjendje më të keqe sesa në versionet e rregullta të Verërave.

Në përgjithësi, aplikacionet 64 bit mund të pritet të jenë në formë më të mirë se aplikacionet 32 ​​bit, sepse nuk kërkohet asnjë strukturë e të dhënave.
Për të garantuar punën, përdoret një instalim i rregullt i Verë, i plotësuar me biblioteka të ndryshme dhe shtresa DLL.
Në një mjedis Linux, aplikacionet e Windows ekzekutohen automatikisht kur QEMU është në direktorinë Wine ("C: \ x86 \ qemu-x86_64.exe.so").

Ndërsa, në Android, është propozuar që të përdoret programi cmd për të kryer ekzekutimin.
Hapësira e adresës është e kufizuar në 4 GB kur rezervoni secilën adresë nën 4 GB.

Shumica e bibliotekave kryesore të Verërave janë ngarkuar më parë mbi 4 GB për të mbajtur hapësirën e mësipërme nën 4 GB sa më të lirë të jetë e mundur. E keqja për këtë është se fillimi i një procesi të ri zgjat rreth 2 sekonda.

verë-4.0

Hangover një verë për ARM64

Vera e sheh secilin proces si një proces 64-bit, kështu që shtresa e saj WoW64 nuk është aktive. Kjo do të funksionojë mirë për aplikacione të pastra 32-bit ose të pastra 64-bit, por do të shkaktojë probleme për aplikacionet e përziera që presin një dallim midis, për shembull, C: \ windows \ system32 dhe C: \ windows \ syswow64.

Lidhur me lëshimin e aplikacioneve Windows 32-bit (x86), përpunohen në nivelin e përkthimit të strukturave të transmetuara midis aplikacionit dhe Verërave (Modeli LLP64 në Windows ruan pajtueshmërinë bazë të kornizës midis WinAPI 32-bit dhe 64-bit).

Për të ekzekutuar aplikacione Windows 32-bit, janë përdorur asambletë 64-bit Wine dhe secili proces trajtohet së pari si 64-bit.

Në anën pritëse, vetëm arkitekturat ARM64 dhe x86_64 mbështeten, por kodi është i unifikuar, duke lejuar që projekti të zhvendoset në arkitektura të tjera në rend bajt nga më i riu tek më i vjetri (pak endian) pa shumë përpjekje.

Ka akoma shumë për të lustruar

Performanca e Hangover në këtë moment lë shumë për të dëshiruar. Që nga ePengesa kryesore është performanca e kodit që gjeneron QEMU.

Megjithatë, kur ekzekutoni në një pajisje Android Nvidia Shield TV. Performanca është e mjaftueshme për të drejtuar lojëra nga vitet 2000.

Aplikimet e testuara në Hangover përfshijnë Notepad ++, ANNO 1602, Age of Wonders, Warhammer 40k: Dawn of War, The Settlers II 10th Anniversary, Prince of Persia 3D, Worms 2, and Worms Armageddon. Shembujt e DirectX 9 SDK gjithashtu funksionojnë me shpejtësi të pranueshme.

Lirimi bazohet në kodin bazë të Wine 4.0, i cili pasqyrohet në numrin e versionit Hangover 0.4.0. Shtresa e imitimit bazohet në projektin QEMU.


Lini komentin tuaj

Adresa juaj e emailit nuk do të publikohet. Fusha e kërkuar janë shënuar me *

*

*

  1. Përgjegjës për të dhënat: AB Internet Networks 2008 SL
  2. Qëllimi i të dhënave: Kontrolloni SPAM, menaxhimin e komenteve.
  3. Legjitimimi: Pëlqimi juaj
  4. Komunikimi i të dhënave: Të dhënat nuk do t'u komunikohen palëve të treta përveç me detyrim ligjor.
  5. Ruajtja e të dhënave: Baza e të dhënave e organizuar nga Occentus Networks (BE)
  6. Të drejtat: Në çdo kohë mund të kufizoni, rikuperoni dhe fshini informacionin tuaj.