Práce na FreeBSD 7 jsou v plném proudu a přestože se nové verze dočkáme až v druhé polovině roku, už nyní je zřejmé, že se bude jednat o průlomovou verzi. Podle některých hlasů to bude podobně významné vydání jako v případě verze 5.0.
My se nyní podíváme podrobně na nejdůležitější novinky, které se připravují a o kterých je už slyšet. Nutno říct, že některé jsou velmi zajímavé. Vybrali jsme pro vás to podstatné, co by se mělo ve FreeBSD 7 objevit. Je možné, že vývojáři některé novinky do data vydání nestihnou. Samozřejmě s tím, jak se bude blížit datum vydání, se budou objevovat další informace.
Souborový systém ZFS
Hlavní část systému ZFS byla portována už v srpnu 2006. Vývojáři samozřejmě dále pracují na tom, aby vše stabilizovali a nabídli pokud možno všechny funkce, které jsou k dispozici v originální implementaci.
ZFS bude ve FreeBSD propojen se stávajícími funkcemi jako UFS a GEOM. To umožní například vytvoření souborového systému UFS nad ZFS. Souborový systém ZFS kombinuje vlastní volume management a další funkce jako snapshoty, copy-on-write, RAID 5 a podobně.
Diagnostika s pomocí DTrace
Na portování DTrace se také začalo pracovat už dříve. Jedná se o diagnostický nástroj pocházející také (jako ZFS) od Sunu.
DTrace je především vývojářským nástrojem, který nabízí možnost vyhledávat chyby a výkonnostní „brzdy”, ale často jej používají i administrátoři. Pokud půjde portace dobře, měl by se DTrace stát oficiální součástí FreeBSD.
Vylepšení síťové vrstvy
Vývojáři FreeBSD se také silně zaměřují na vylepšení síťové vrstvy. Jedním z aktuálních problémů je například zátěž procesorů při použití rychlých síťových spojů (gigabity a více). FreeBSD 7 proto bude podporovat hardwarovou akceleraci s pomocí TOE (TCP offload engine) a TSO (TCP segmentation offloading), o kterou se stará síťová karta. Tím dojde k odsunu zátěže z CPU na samotnou kartu.
Další podstatnou změnou bude automatický socket buffer, který bude dynamicky měnit svou velikost dle aktuální potřeby. V současné době je jeho velikost pevně dána na 32 KB. Velikost bude měnit jak read, tak i write buffer.
Podpora superpages
Některé procesory nabízejí možnost pracovat s většími bloky paměti. Těm se pak obecně říká superpages. Tento systém umožňuje mapovat velké kusy fyzické paměti do virtuální. To znamená mnohem lepší využití TLB (Translation Lookaside Buffer) a snižuje šanci výpadků. V důsledku je tedy poměrně rapidně navýšen výkon paměťového subsystému, a to místy až o 30 %. Od systému ale použití superpages vyžaduje zcela jinou organizaci práce s pamětí.
Paměť s jemalloc
A ještě jednou k práci s pamětí. Pokud netušíte, co je to malloc: Jedná se o rutinu, kterou nabízí standardní C knihovna. Umožňuje dynamické alokování systémové paměti. Program s její pomocí informuje systém, kolik potřebuje přidělit nové paměti. Více v článku Jak funguje malloc a free.
Ve FreeBSD aktuálně používaný algoritmus malloc zvaný phkmalloc je už více než deset let starý a dnes již nevyhovuje aktuálním potřebám. Byl navržen v době, kdy bylo potřeba pamětí úzkostlivě šetřit, protože jí byl jednoduše nedostatek. Hlavním požadavkem na malloc tehdy byl šetrný přístup k volné paměti.
Dnes je ale situace jiná, a proto byla vytvořena nová implementace zvaná jemalloc. Ta na rozdíl od původního programu klade důraz především na výkon a lepší dostupnost paměti. Nabízí také lepší práci na multithreadových a víceprocesorových systémech.
Nové platformy
FreeBSD má samozřejmě zájem dostat se i na další platformy. V současné době běží na architekturách x86, DEC Alpha, Sun UltraSPARC, IA-64, AMD64, PowerPC a NEC PC-98.
Nově by měla být k dispozici podpora embedded procesorů ARM a také Niagara T1 od Sunu. V prvním případě je vývoj poměrně daleko a zřejmě v oficiální portaci nic nebrání. Procesory Niagara jsou ovšem o poznání složitější, a tak práce na jejich podpoře budou ještě chvíli trvat, přestože pokrok je poměrně značný.
Jen pro zajímavost, tyto procesory nabízejí až osm jader a 32 zároveň běžících threadů na každý procesor.
Audit bezpečnostních událostí
Nový systém bezpečnostních auditů umožňuje především logovat velké množství událostí jako je přihlašování, změna konfigurace, přístupy k souborům, práce se sítí a podobně. Záznamy pak mohou být využity při monitorování systému, odhalování průniků a podobně.
Nové FreeBSD 7 bude implementovat standardní BSM API a souborový formát. Obojí opět pochází od Sunu. Výhodou je, že systém bude schopen spolupracovat s auditními systémy Solarisu a Mac OS X.
Podpora SCTP
Stream Control Transmission Protocol je specializovaný komunikační protokol, který zajišťuje bezpečnost transportních služeb. Je schopen zajistit, že se data dostanou k cíli bez chyb a ve správném pořadí.
Jeho výhodou je tedy vysoký výkon a bezproblémový přenos dat. Toho lze využít především při implementaci internetové telefonie, ale z kvalitních spojů budou samozřejmě těžit i běžné aplikace.
Podpora kvalitního audia
Ve FreeBSD 7 se objeví nově vyvinutý ovladač pro profesionální audio techniku, podporující HDA (High Definiton Audio). Takový hardware nabízí podporu až 192 kHz/32 bit vzorkování na dvou kanálech nebo 96 kHz/32 bit pro osm kanálů.
Informace pocházejí ze serveru ivoras.sharanet.org.