:

Szerző: Bizó Dániel

2010. október 8. 08:34

ARM chipeken is futhatnak a Windows-alkalmazások

Immár ARM architektúrán is futhat a Wine, miután az 1.3.4 kiadás teljessé tette a támogatást. Az elsődleges cél jelenleg, hogy könnyűvé tegye a multiplatform fejlesztést Windows programozók számára is, emulátorral együtt azonban lehetségessé válhat az x86/Windows desktop alkalmazások futása is.

Gyors multiplatform fejlesztés

A napokban megérkezett a Wine (Wine Is Not an Emulator) legújabb, 1.3.4 verziószámot viselő fejlesztői kiadása, amely szokás szerint számos javítást és fejlesztést hozott magával, ugyanakkor messze a legérdekesebb az ARM utasításkészlet-architektúra támogatásának kiteljesedése. Az utolsó fázisban a Winelib portja készült el, ami lehetővé teszi, hogy ARM processzorokon is fusson a Windows 32 API-kat is implementáló szoftverréteg.

A Winelib alkalmazásfejlesztői eszközkészlet lehetővé teszi, hogy a Windows platformra írt C vagy C++ forráskódot jó eséllyel le tudjuk fordítani, hogy fusson az adott Winelib verzión. Az újrafordítással a fejlesztők stabil működést, és a Linux/UNIX környezettel történő szorosabb integrációt tudják biztosítani.

A Winelib ARM architektúrára készített változata önmagában nem elég ahhoz, hogy windowsos alkalmazásokat változtatás nélkül futtassunk, hiszen az x86 utasításkészletet feltételez. Az újrafordítással ugyanakkor lehetővé válik a kód gyors, viszonylag egyszerű portolása, ha nem használ olyan specifikus hívásokat, mint a COM, amely többek közt az alkalmazások közti adatcserét teszi lehetővé. Az ARM-ra történő mozgatás előtt további akadály lehet az Intel- vagy  AMD-specifikus utasítások használata, mint például az SSE vektorműveleteké. Ha szükségesek is módosítások, ezek sokkal kisebbek és egyszerűbbek, mint a teljes kódot portolni natív Linux/UNIX környezetben történő futásra.

Út nyílhat az ARM előtt

A Wine 1.3.4 nem stabil kiadás, így éles üzemben történő használata ellenjavallott. Az ARM támogatás megjelenése ugyanakkor kétségtelenül izgalmas lehetőségeket vázol fel, még akkor is, ha a nyílt forrású szoftvernek még hosszú időbe telhet, mire bevethető szintre érleli az ARM architektúrán történő alkalmazásfuttatást. Elméletileg nincs akadálya annak, hogy natív x86/Windows kódot futtatni lehessen ARM/Linux rétegen használni, a Wine ugyanakkor nem képes utasításkészletek közti fordításra, mivel a Windows-Linux megfeleltetés megoldására koncentrált, x86 processzorokon.

Kísérletek már történtek arra, hogy QEMU emulátorral ezt áthidalják, a teljes hardveremuláció azonban rendkívül alacsony hatékonyságú teljesítmény szempontjából, így vélhetően legalább hibrid, részlegesen emulált, részlegesen dinamikusan fordított megoldásra volna szükséges az elfogadható sebességű futáshoz. Egy ilyen fejlesztési erőfeszítéshez valószínűleg komoly vállalati támogatás volna szükséges, például az ARM processzorokat fejlesztők részéről, mivel számukra a Windowszal való inkompatibilitás a PC-piaci siker előtti legnagyobb gátak egyike - igaz, őket valószínűleg a Windows operációs rendszer futtatása érdekelné jobban, nem csak az alkalmazásoké.

Az AI és a nagy full-full-stack trend

Az AI farvizén számos új informatikai munkakör születik, vagy már ismert munkák kapnak új nevet és vele extra elvárásokat is.

Az AI és a nagy full-full-stack trend Az AI farvizén számos új informatikai munkakör születik, vagy már ismert munkák kapnak új nevet és vele extra elvárásokat is.

A hardver- és szoftverplatformok közti szabad átjárás nem újdonság, hasonló mutatványra kereskedelmi szoftverek évek óta képesek, éles üzemben bizonyítottak. Az IBM által felvásárolt Transitive például nagy teljesítménnyel futtatta a SPARC/Solaris kódokat Itanium/Linux platformon is, de az IBM Power gépein is tud ezzel a technológiával x86/Linux kódokat fogadni. A Transitive tette lehetővé az Apple számára, hogy viszonylag fájdalommentesen tudjon átmigrálni PowerPC hardverről Intel processzorokra.

Igaz, kétséges, mennyire ésszerű egyáltalán belevágni ilyen irányú fejlesztésekbe, hiszen az eddigi referenciák esetén a célplatform mindig sokkal erőteljesebb hardverrel rendelkezett, mint a forrás - az Intel processzorai lelépték a G5 chipeket, az Itanium magjai is jóval potensebbek voltak MIPS vagy az UlraSPARC processzoroknál. Mindez lehetővé tette, hogy a dinamikus fordítás jelentette futásidejű költségeket ellensúlyozva a forrás platform natív sebességéhez közeli, vagy akár feletti teljesítményt érjünk el. Az ARM chipek esetében azonban éppen fordított a helyzet, olcsóbbak és kevesebbet fogyasztanak az x86 processzoroknál, de éppen emiatt felépítésük annál sokkal kevésbé erőteljes.

Szeptember 15-én, hétfőn ONLINE formátumú, a Kafka alapjaiba bevezető képzést indít a HWSW, ezért most összefoglaltuk röviden, hogy miért érdemes részt venni ezen a tanfolyamon.

a címlapról

MS

0

Lezárta a Teams-ügyet az EU

2025. szeptember 12. 12:45

A Bizottság elfogadta a Microsoft által tett engedményeket, nincs retorzió az idestova öt éve húzódó eljárás végén.

bango

4

Tartalomautomatával bővül a OneTV

2025. szeptember 12. 09:27

A One tévés platformjába a Bango DVM-jét integrálják, ami jelentős mértékben megkönnyíti az új tartalomszolgáltatások bevezetését.