A Linux 4.7 fontosabb újdonságai

Tux logó
A nyári szünetünkben megjelent a Linux 4.7 stabil kiadása, ahogy arról hírt is adtunk. Ennek okán érdemes áttekinteni a főbb változásokat.

Ebben a cikkben tehát erről lesz szó. Fontos megjegyezni, hogy ez egy fordítás. Az eredeti írás a Linux Kernel Newbies oldalán található.

Röviden:

  • Radeon RX 480 GPU támogatása
  • útvonalak párhuzamos felfedezése ugyanabban a könyvtárban
  • új (és kísérleti) „schedutils” frekvencia vezérlő, mely elméletileg gyorsabb és hatékonyabb, mint az eddigiek
  • támogatás az EFI „Capscule” firmware frissítő mechanizmusához
  • támogatás a virtuális USB eszközökhöz USB/IP-vel, mellyel az emulált telefon valódi USB eszköznek látszik a rendszerben!

A biztonság is fejlődött hála az új „LoadPin” biztonsági modulnak, mely használatával biztosak lehetünk abban, hogy minden kernel modult ugyanarról a fájlrendszerről töltöttünk be.

Természetesen a kiemeltek mellett a kernel minden részében találunk kisebb-nagyobb javításokat és új illesztőprogramokat.

Huh, felsorolni is hosszú volt, lássunk neki!

Radeon RX 480 GPU támogatás

A 4.7-es kernelben lévő amdgpu illesztőprogram támogatja a frissen megjelent Radeon RX 480 nevű, az első Polaris kódnevű architektúrára épülő grafikus processzort (és persze az összes Polaris köré épülő GPU-t is).

Párhuzamos könyvtár feltérképezés

A könyvtár gyorsítótára gyorsítótárazza az elérési útvonalak neveit, hogy gyorsan elérhető legyen az útvonal-feltérképezéseknél. Ennek hála, jó néhány megszokott művelet sebessége gyorsul. Például lehetővé válik az adott fájl vagy könyvtár létezésének ellenőrzése anélkül, hogy a lemezről olvasni kellene. A gyorsítótár mutexeket használ az adott könyvtárban lévő nevek sorba állításához.

Ebben a kiadásban a sorba állító mutex le lett cseréve egy írás-olvasás szemaforra, így lehetővé vált az adott könyvtárban lévő nevek párhuzamos feltérképezése. A legtöbb művelet ebből nem érez semmit (a gyorsítótárazott útvonalnév-feltérképezések gyorsak, és a zárolással kapcsolatos problémák igen-igen ritkák). Azonban azon specifikus műveletek, melyek nagymértékben használják az adott könyvtárban lévő útvonalnév-feltérképezést, gyorsabbak lesznek, mert most már párhuzamosan dolgozhatnak. A legtöbb fájlrendszer már ismeri ezt a képességet.

Új „schedutil” frekvencia vezérlő

Ebben a kiadásban újdonságként jelenik meg a „schedutil” frekvenciavezérlő a frekvenciavezérlő alrendszerben. Két fő különbség van a meglévő vezérlők és a schedutil közt: A schedutil közvetlenül az ütemezőtől érkező információk alapján hozza meg a döntéseit. Második nagyobb különbség, hogy a schedutil felhasználhatja a cpufreq illesztőprogramokat a CPU teljesítmény azonnali változtatására, mindezt anélkül, hogy bármilyen további munkát vagy bármi mást vinne be a végrehajtási kontextusba.

Ez azt jelenti, hogy a frekvenciaváltások késleltetésének terheléstől függetlenül igen alacsonynak kellene lennie, illetve az ütemezőtől megkapott információknak hála, megbízhatóbb döntés hozható. Ne feledd: az ebben a kiadásban bemutatkozó schedutil frekvenciavezérlő még igen egyszerű és jelenleg inkább az ütemező és CPU energia energiamenedzsment jobb együttműködéseként kell rá tekinteni. Még ilyen állapotban is, az előzetes eredmények biztatóak. A schedutil megoszt némi finomhangolással kapcsolatos funkciót a többi vezérlővel is.

EFI "Capsule firmware frissítés támogatása

Ebben a kiadásban jelenik meg az EFI „kapszula” mechanizmus támogatása, amivel bináris adatot lehet átadni az EFI firmware-nek. Ezt az adatcsomagot a firmware feldolgozza és a tartalma alapján eldönti, hogy mit tegyen vele. A kapszulák legáltalánosabb használata, ha a bináris csomag az EFI frissítését tartalmazza, melyet feldolgozva a következő rendszerindításkor megtörténhet a teljes frissítés. A kapszulák feltöltése a /dev/efi_capsule_loader eszközre való írással történik.

USB/IP-t támogató virtuális USB eszközök létrehozása

Az USB/IP segítségével USB eszközöket oszthatunk meg a hálózaton. Ehhez eddig valódi USB eszközre volt szükség. Ebben a kiadásban az USB „kütyük” alrendszer segítségével lehetővé vált virtuális USB eszközvezérlőket létrehozni fizikai eszköz nélkül.

Számos helyen hasznos az új funkció, például lehetővé válik a telefon emulálás fejlesztése a fejlesztői környezetekben. Az emulált telefonok immár úgy képesek a fejlesztő gépéhez vagy egy virtuális géphez csatlakozni, mintha fizikai eszközök lennének. Hasznos lehet még az USB tesztelésére és oktatási célokra is.

LoadPin: biztonsági modul a kernel modulok betöltésének korlátozására

A LoadPin egy új Linux Biztonsági Modul, mely használatakor biztosak lehetünk abban, hogy minden a kernel által betöltött fájl (kernel modulok, firmware, kexec képek, biztonsági házirendek) ugyanarról a fájlrendszerről származnak. Az elvárás az, hogy az adatokat tartalmazó fájlrendszer egy csak olvasható eszközön van, mint pl. a CDROM vagy dm-verify (ez a funkciót a ChromeOS-nek köszönhetjük, ahol az egész eszköz kriptográfiailag ellenőrzött dm-verify-jal). Ezzel a modullal lehet egy ellenőrzött és/vagy megváltoztathatatlan fájlrendszered, melyen anélkül kikényszerítheted ki a modul és firmware betöltési korlátozásokat, hogy egyesével aláírnád a szükséges fájlokat.

Jelen cikkemben a teljesség igénye nélkül próbáltam bemutatni a 4.7-es Linux kernel sorozat fontosabb újdonságait. Ha ennél mélyebben érdekel a kernel és nem riadsz vissza az angoltól, nézz bele az eredeti cikkbe a Linux Kernel Newbies oldalán.

A jelenlegi tervek szerint a 4.8-as sorozat újdonságairól is szót ejtünk majd. Tarts velünk akkor és addig is!