Szerző: Bodnár Ádám

2014. március 31. 13:03

Megjelent a Linux kernel 3.14

Magyar idő szerint ma hajnalban megjelent a 3.14-es Linux kernelt bejelentő levél Linus Torvaldstól a kernel levelezőlistán. Szokásunkhoz híven megpróbáltuk megkeresni a legérdekesebbnek tűnő újdonságokat.

HIRDETÉS

A szokásos nyolc kiadásra jelölt verzió után megérkezett a végleges 3.14-es rendszermag. Stílszerű lett volna "pí napra", vagyis március 14-ére időzíteni a megjelenést, de csak március 30-án, vasárnap este (magyar idő szerint hétfőn hajnalban) adta hírül a kód elkészültét a kernel levelezőlistán Linus Torvalds.

Új ütemező

A legnagyobb dobásnak az új rendszermagban a határidős feladatütemezés ("deadline scheduling") tűnik első látásra, amely a valós idejű környezetet üzemeltető felhasználók számára lehet elsősorban fontos. A számítógépes operációs rendszerek, köztük a Linuxszal, a futó feladatokat rendszerint prioritásuk alapján ütemezik: a rendszer vagy a felhasználó által fontosabbnak jelölt szoftverek számára több erőforrást dedikálnak, hogy azok hamarabb hajtódjanak végre - az alacsonyabb prioritású feladatok kárára.

A valós idejű feladatok esetén, ahol a műveletek elvégzésére néha ezredmásodperces vagy milliomod másodperces határidők vannak, ez a módszer nem mindig megfelelő. Az új kernelbe ezért bekerült egy új feladatütemező, amely nem prioritások alapján dönti el, melyik feladat fusson, hanem az egyes folyamatokhoz rendelt határidők alapján. Nagyon leegyszerűsítve arról van szó, hogy a feladatok nem prioritással rendelkeznek, hanem ezredmásodpercben megadott futási idővel, ismétlési idővel (milyen gyakran kell lefussanak) és határidővel (mikorra kell lefussanak). A kernel ezek alapján gondoskodik az ütemezésükről, garantálva a határidők betartását. A határidős feladatütemező működéséről részletesen a LWN.net cikkében lehet olvasni.

Egyéb újdonságok a motorháztető alól

A Kernelnewbies cikke szerint a 3.14-re beérett és stabillá vált az új rendszermagban a zRAM. A zRAM a swappelés előtt (helyett) tömöríti a memóriát, ezzel spórol egyrészt a kapacitással, másrészt az I/O műveletekkel - elsősorban olyan környezetben lehet hasznos a használata, ahol kevés a rendelkezésre álló háttértár, tipikusan ilyenek lehetnek az okostelefonok, tabletek és más beágyazott eszközök. A zRAM-ot egy ideje már élesben is használják, az Android Kit Katba és a Chrome OS-be is bekerült például.

Teljesítményhangoláskor és hibalehárításkor sokan szeretnek a lockdephez nyúlni (locking validator), amely a deadlockok feltárásának egy hasznos eszköze. A user space-ben futó programok számára eddig nem állt rendelkezésre egy ilyen hatékony eszköz, a 3.14 azonban lehetővé teszi a fejlesztők számára, hogy a kernelmódú eszközt a user space-ben is bevessék, erre való a user-space-lockdep, amelyet anélkül sikerült elkészítenie a korábbi Ksplice-os, most Oracle-alkalmazott Sasha Levinnek, hogy a kernelmódú kódon egyáltalán nem módosított.

A Linux kernelbe is megérkezett az Adress Space Layout Randomization, amely a puffertúlcsorduláson alapuló támadások ellen hivatott védelmet nyújtani azáltal, hogy egyes objektumokat véletlenszerű memóriacímeken helyez el, megnehezítve a támadók számára annak kiszámítását, hová érdemes a kártékony kódjukat helyezni a végrehajtáshoz. A szabad operációs rendszeren futó alkalmazások eddig is használhattak ASLR-t, de most maga a rendszermag is tartalmazza ezt a képességet, a kernel kódjának elhelyezkedése bootolás során dől el. A Kernel Address Space Layout Randomization a Google-nél dolgozó Keen Cook munkája és a Chrome OS-ben már benne is van. A technika működéséről az LWN.net cikkében lehet részletesen olvasni.

Száz új fejlesztőt keres a Docler, akár 2,5 milliós fizetéssel (x)

A IT szektorban is kimagasló bérezéssel keresi a legjobb magyar fejlesztőket a Docler Holding - nem csak a hazai irodákba.

Száz új fejlesztőt keres a Docler, akár 2,5 milliós fizetéssel (x) A IT szektorban is kimagasló bérezéssel keresi a legjobb magyar fejlesztőket a Docler Holding - nem csak a hazai irodákba.

Hálózatkezelés terén érdekes újdonság a "TCP autocorking" támogatása. Az elgondolás lényege, hogy a kis mennyiségű adat átvitelével járó műveleteket a kernel egy nagyobb csomagban, együtt továbbítja, amivel jobb erőforrás-kihasználás érhető el. A funkció alapértelmezetten be van kapcsolva, de kikapcsolható.

Grafika, hardvertámogatás

A rendszermag szokás szerint sok fontos fejlesztést tartalmaz a grafika és a 3D gyorsítás területén. Az új kernel már támogatja a Broadwell generációs Intel processzorokba épített videovezérlőt - a 14 nanométeres csíkszélességgel gyártott chipek várhatóan az év második felében jelennek meg a piacon. Intel-vonalon újdonság még a Merrifield generációs Atomok támogatása. A nyílt forrású Nouveau driver, amely az NVIDIA chipjeihez készül, már "ismeri" a legújabb GeForce-okat, a GK110 kódnevű chipre épülő GTX 780/Titan sorozatot, valamint a GeForce 630/640 lapkákat, amelyek kódneve GK208. Fájó hiányosság ugyanakkor, hogy még a 3.14-es kernel sem támogatja a "Maxwell" generációs GTX 750-et.

Az AMD-tulajdonosok is örülhetnek, az újabb Radeonokon is megfelelően működik a dinamikus energiamenedzsment. Ami az AMD-t illeti, itt egy további fejlesztés a kriptográfiai gyorsító (AMD CCP) támogatása, amely révén Linux alatt  lekerülhet a terhelés a CPU válláról az AES, SHA és egyéb titkosítási algoritmusok futtatása alatt. A CCP-ről egyelőre keveset tudni, feltehetően az ARM-alapú Opteronokban debütál majd, 2014 végén vagy 2015 elején - a használhatósága nem a Linux kernelen fog múlni.

Az új rendszermag fejlesztéseiről bővebben a Kernelnewbies, az LWN.net (1, 2, 3) és a Phoronix cikkeiből lehet tájékozódni, ennek az anyagnak a megírásához is ezek szolgáltatták a támpontokat.  Maga a kernel természetesen letölthető a kernel.org oldaláról.

a címlapról