Nagyon meglökheti az ARM szekerét a Windows 11 új ABI-ja

Az ARM64EC nagymértékben leegyszerűsíti a 64 bites alkalmazások ARM-ra portolását.

A Microsoft egy ideje már épít az ARM-ra a Windows operációs rendszer esetében, de eddig jelentős probléma volt, hogy a fejlesztők számára nem létezett egyszerű megoldás a meglévő alkalmazások portolására. Ez különösen igaz volt a 64 bites programokra; vagy választották a teljesen natív futtatást, ami rengeteg munkával járt, vagy reménykedtek az emulátorban.

A redmondi óriáscég ezen próbál segíteni egy új, Windows 11-re kiadott ABI-val (application binary interface), amely az ARM64EC nevet viseli. Ennek a különlegessége az, hogy követi az x64-re (AMD64-re) jellemző hívási konvenciókat, veremhasználatot és adatkiigazítást, vagyis az ARM64EC interoperábilis az x64-gyel.

Mindez olyan szempontból óriási előrelépés, hogy a fejlesztők többet nincsenek a két végletre kényszerítve a döntés tekintetében, így nem szükséges teljesen az emulációra építeniük, de eközben nem is kell a teljes kódbázisukat ARM-mal kompatibilissé tenniük. Egyszerűen választhatnak egy olyan középutat, amelyben az alkalmazás tartalmazhat x64-es és ARM64-es kódot is. Ezeket az ARM64EC ABI úgy kezeli, hogy előbbi emulációval, míg utóbbit natívan futtatja. Természetesen ez a módszer nem olyan gyors, mintha a teljes kódbázis natívan futna, de nem is szükséges jelentős anyagi befektetés a portoláshoz.

A mögöttes koncepciót tekintve az ARM64EC egyrészt lehetővé teszi azt, hogy a fejlesztők csak azokat a kódrészeket tegyék ARM-mal kompatibilissé, ahol ennek jelentős teljesítményelőnye van, míg a több többi kód futhat emulációval. Emellett az alkalmazás maga is egységesen fejlődhet funkcionálisan, függetlenül attól, hogy milyen processzoron fog futni.

Az ARM64EC esetében fontos kiemelni, hogy maga az ABI csak Windows 11-en érhető el, tehát a fentiekhez a Microsoft legújabb operációs rendszerét kell használni.

Azóta történt

Előzmények

Hirdetés