Szerző: Bodnár Ádám

2012. május 21. 11:32:00

Hibrid alkalmazásfuttatási mód az új Linux kernelben

Vasárnap megérkezett a Linux rendszermag 3.4-es verziója, amiben megjelent egy hibrid 32-64 bites alkalmazásfuttatási mód. Az x32 ABI-nak főleg mobil eszközök élvezhetik az előnyeit.

32 és 64 bit között

Linus Torvalds vasárnap bejelentette a 3.4-es Linux rendszermag elérhetőségét. A kernel egy hónappal és egy nappal követte a 3.3-as változatot, kicsiszolásához összesen hét kiadásra jelölt (RC) verzióra volt szükség. A rendszer mélyén talán a legérdekesebb újdonság az x32 ABI (Application Binary interface) megjelenése. Ez egyfajta hibridje az x86-nak és az x64-nek, az erre fordított programok 64 bites regisztereket és adatutakat használhatnak, de csak 32 bites pointereket és adatokat, vagyis részesülnek a 64 bites feldolgozás előnyeiből anélkül, hogy elszenvednék annak jellemző hátrányait, például a megnövekedő kódméretet.

Az elgondolásnak leginkább a beágyazott rendszerekben, valamint a mobil eszközökben lehet szerepe. Az okostelefonok vagy tabletek akár a közeljövőben is több mint 4 gigabájt operatív tárral rendelkezhetnek, amit 32 bites kernel csak trükkökkel tud címezni. Ugyanakkor a mobilos alkalmazásoknak egyenként ritkán van szüksége ekkora memóriára. Így egy teljes 64 bites kernel és 64 bites alkalmazások használata inkább csak hátrányt és vélhetően némi teljesítményveszteséget is jelentene a hibrid megközelítéshez képest. Az asztali gépek és szerverek valószínűleg továbbra is teljes 64 bites üzemmódban fognak működni ezután is.

A legelterjedtebb okostelefonos paltform, az Android a Linux kernelre épül, de ezt használja a Samsung és az Intel közös gyermeke, az egyelőre még készüléken nem hozzáférhető Tizen is. Az Intel az egyetlen gyártó, amely 64 bites architektúrával van jelen a mobil szegmensben, a piacot uraló ARM-alapú lapkák, amelyeket a Qualcomm, az NVIDIA, a Samsung vagy a Texas Instruments gyárt, 32 bitesek. Az Intel számára tehát fontos lehet, hogy az Atom 64 bites felépítéséből profitálni tudjon anélkül, hogy annak hátrányait elszenvedné - nem csoda, hogy az x32 ABI fejlesztését az Intel mérnökei vezették. A projektről bővebben az x32 projekt hivatalos weboldalán lehet olvasni.

A 3.4-es kernel újdonságait felsoroló listáról érdekesnek tűnik még a Xen módosítása, amely lehetővé teszi, hogy egy Dom0 módban működő kernel átadja a hypervisornak a processzor órajelére és energiatakarékos funkcióira vonatkozó adatokat. Ezek birtokában a hypervisor módosíthatja a CPU órajelét vagy alvó ciklusba (C-state) is küldheti azt, amivel csökkenthető a rendszer fogyasztása - ez szervereknél legalább annyira kívánatos mint noteszgépek esetében, ahol még az akkumulátoros üzemidőt is növeli. Szintén virtualizációval kapcsolatos fejlesztés, hogy a Hyper-V Storage driver is elhagyta a "staging" fázist és bekerült a SCSI alrendszerbe. A Microsoft még 2009-ben adta át ezt a meghajtót a közösségnek, de a minősége azóta sem érte el a kívánt szintet.

NVIDIA, AMD, Intel: újdonságok a GPU-k háza tájáról

A 3.4-es rendszermag további fő újdonságai a grafikus driverek köré csoportosulnak. Az NVIDIA chipekhez fejlesztett Nouveau driver végre elhagyta a "staging" fázist, vagyis a kernel karbantartói szerint már megfelel az elvárt minőségi kritériumoknak. Ugyanitt érdemes megemlíteni, hogy a GeForce GTX 680 ("Kepler") grafikus chip, amelyet március végén mutatott be az NVIDIA, már támogatott, bár egyelőre a gyorsítás hiányzik.

Miért érdemes belevágnod a Scrum képzésünkbe? (x) Október 21-én Scrum alapozó képzést indít a HWSW, íme néhány jó érv a kurzus mellett.

A Radeon (DRM/KMS) driver is fejlődött, már használhatók vele a Southern Island generációs chipek, vagyis a Radeon HD 7000-es sorozat tagjai, valamint támogatott a Trinity kódnevű APU-k integrált grafikus vezérlője is. Az AMD május közepén rántotta le a leplet új generációs processzorairól, amelyekben a Bulldozer-leszármazott magok mellett egy DX11-es GPU dolgozik. Mivel ez lényegében egy kicsinyített Radeon HD 6900, a támogatáson nem kellett sokat dolgozni. Az AMD A-sorozatú processzorok tulajdonosainak további jó hír, hogy a DisplayPort-VGA adapterek is működnek végre a 3.4-es kernel alatt.

Az Intel GPU-k kezelése már jó ideje központi kérdés a Linux rendszermagban, az energiatakarékossági funkciók kapcsán számos stabilitási probléma merült fel. A grafikus magok RC6 energiatakarékos állapotának használata most alapértelmezésként be van kapcsolva a rendszermagban, ezzel látványosan csökkenhet az Intel GPU-t tartalmazó gépek fogyasztása, ami főleg laptopok esetén jelent előrelépést. A 3.3-as kernelben Sandy Bridge generációs chipek esetén az RC6 kezelése stabilitási gondok miatt még ki volt kapcsolva és "kézzel" kellett bekapcsolni. A fejlesztők orvosoltak egy memóriakezelési problémát is az i915 driverben, amely hibernált állapotból történő felébredéskor jelentkezett.

További olvasnivaló

A 3.4-es rendszermag újdonságaival kapcsolatban érdemes elolvasni az H-Online kimerítő részletességű cikkeit (1, 2, 3), valamint a Kernelnewbies írását. Az új rendszermag szokás szerint a www.kernel.org oldalon érhető el.

a címlapról