Foto: LibeSystem

Když dnes někdo představí nový operační systém, často se za tímto označením ukrývá nová linuxová distribuce. Změní se grafické prostředí, sada aplikací a několik systémových nástrojů, pod nimi ale nadále pracuje linuxové jádro a technologie vyvíjené desítky let. U projektu LiberSystem je situace podstatně zajímavější. Český tým kolem LiberSoftu se rozhodl postavit OS skutečně od základů.

Nejde přitom jen o vlastní grafické prostředí nebo několik nových systémových služeb. LiberSystem má vlastní mikrojádro, vlastní způsob komunikace mezi jednotlivými částmi systému, odlišný bezpečnostní model a také vlastní souborový systém LiberFS. Zdrojový kód projektu je veřejně dostupný a systém je napsaný v programovacím jazyce Rust.

Právě tady je potřeba trochu brzdit případná velká očekávání. LiberSystem dnes není konkurent Windows 11, macOS nebo běžných linuxových distribucí, který by si měl uživatel nainstalovat na pracovní notebook a pokračovat ve své každodenní práci. Samotní vývojáři jej označují za experimentální open-source systém. Z technologického hlediska je ale zajímavý právě tím, že nemusí zachovávat desetiletí starou kompatibilitu a může některé základní principy operačních systémů navrhnout znovu.

Linux má přes 30 let historie. LiberSystem začíná s čistým stolem

Jednou z věcí, proti kterým se LiberSystem vymezuje, je tradiční unixová filozofie. Linux sice vznikl až v roce 1991, mnoho principů, na kterých stojí, však vychází z výrazně staršího Unixu. Zachování kompatibility má obrovskou výhodu. Software vytvořený pro zavedené platformy nemusí být při každé zásadnější změně přepisován. Současně ale vývojářům svazuje ruce.

Jiří Kreibich, který stojí v čele společnosti LiberSoft, při představení projektu v komunitě kolem programovacího jazyka Rust popsal několik věcí, které mu na unixovém modelu dlouhodobě vadily. Patří mezi ně například známý princip „všechno je soubor“ nebo používání jednoho stromu pro soubory, zařízení a další systémové prostředky. Právě otázka, jak by mohl operační systém vypadat bez těchto historických omezení, se stala jedním z východisek LiberSystemu.

Nový systém proto místo tradičního přístupu používá typované objekty. Jednotlivé prostředky mají jasně definovaný typ a rozhraní. Pro popis komunikace mezi komponentami vznikl dokonce vlastní jazyk LSIDL, tedy LiberSystem Interface Definition Language. Z jeho definic mohou vznikat potřebné části pro klienty, servery, přenos dat i dokumentaci.

Podstatně odlišná je také samotná architektura jádra. Linux používá monolitické jádro, ve kterém pracuje značná část klíčových komponent systému včetně řady ovladačů. LiberSystem naproti tomu sází na mikrojádro. V něm má zůstat jen nezbytné minimum funkcí, například plánování, práce s pamětí, komunikace mezi procesy nebo správa oprávnění.

Systémové služby a ovladače mohou pracovat odděleně mimo samotné jádro. Praktický přínos takového řešení je poměrně snadno pochopitelný. Pokud selže izolovaný ovladač nebo služba, chyba nemusí automaticky znamenat pád celého operačního systému. Danou komponentu lze restartovat samostatně. Tím zvolená architektura přispívá ke stabilitě celého systému a omezuje dopad chyb jednotlivých komponent.

Mikrojádro přitom není nový vynález LiberSoftu. Jde o dlouhodobě známý přístup k návrhu operačních systémů a různé jeho podoby používají či zkoumají i jiné systémy. Zajímavé je spíše to, že LiberSystem tuto koncepci kombinuje s dalšími modernějšími technologiemi a nemusí se přitom ohlížet na zpětnou kompatibilitu s Linuxem.

Důležitou roli hraje Rust. Programovací jazyk, jehož počátky sahají do Mozilly, si během posledních let získal značnou pozornost právě díky důrazu na bezpečnou práci s pamětí. Jeho mechanismy dokážou už při kompilaci zabránit celé řadě chyb spojených s nesprávnou správou paměti, které bývají v nízkoúrovňovém softwaru významným zdrojem bezpečnostních problémů. Použití Rustu tak výrazně přispívá k bezpečnosti systému.

Bez univerzálních práv pro aplikace a s vlastním souborovým systémem

Zajímavější než samotná volba programovacího jazyka je bezpečnostní model LiberSystemu. Projekt používá takzvané capabilities, tedy oprávnění navázaná na konkrétní prostředky a operace. Proces má dostat pouze práva, která skutečně potřebuje.

Uživatel systému může mít maximální oprávnění, spuštěné aplikace je však automaticky nepřebírají. Přístup aplikace ke konkrétnímu prostředku vyžaduje explicitně přidělenou capability, která zároveň určuje rozsah oprávnění a může být odvolána.

Jde o realizaci principu nejnižších nutných oprávnění přímo v architektuře systému. Místo spoléhání na to, že vývojář nebo správce správně omezí přístup aplikace, má být omezení jednou ze základních vlastností platformy.

Vlastní cestou se LiberSystem vydává také při práci s disky. Unixové systémy používají jeden adresářový strom, do kterého lze další úložiště připojovat prostřednictvím mountpointů. LiberSystem pracuje s explicitními svazky. Cesta tak jednoznačně patří ke konkrétnímu úložišti.

Ani souborový systém vývojáři nepřevzali z existující platformy. LiberFS používá princip copy-on-write, kontrolní součty, extentové mapování a podporu snapshotů. Některé z těchto vlastností samozřejmě známe z moderních souborových systémů, například Btrfs nebo ZFS. LiberFS je však navržen jako nativní součást nové platformy.

Ambiciózní je rovněž plán pro aplikace. LiberSystem počítá se sandboxovanými komponentami WebAssembly a WASI. Právě aplikace založené na WASM mají být přenositelné mezi různými procesorovými architekturami, takže stejný aplikační artefakt může fungovat na x86-64, ARM64 i RISC-V bez nutnosti připravovat pro každou architekturu samostatnou nativní verzi.

Samotné jádro přitom není mezi architekturami totožné. LiberSystem používá samostatné implementace jádra pro x86-64, ARM64 a RISC-V, které mají poskytovat stejné systémové chování na rozdílném hardwaru. Přenositelnost se tedy týká především aplikací ve WebAssembly, nikoli jednoho univerzálního jádra.

To je důležité zejména z hlediska potenciálního využití mimo klasické osobní počítače. Autoři zmiňují vývojáře, výzkum, zařízení typu appliance, edge computing nebo další experimentální nasazení, kde může být zajímavější bezpečnostní architektura a izolace jednotlivých komponent než kompatibilita s obrovským katalogem existujících programů.

A právě software a hardware budou současně jednou z největších překážek, pokud by se měl LiberSystem někdy rozšířit mezi běžné uživatele. Windows, macOS i Linux těží z desetiletí vývoje ovladačů, aplikací, knihoven a nástrojů. Sebelépe navržený operační systém bez potřebného softwaru a podpory hardwaru nemůže tuto výhodu rychle dohnat.

Vývojáři si to podle svých veřejných vyjádření uvědomují. Jiří Kreibich při představení projektu v červenci 2026 výslovně uvedl, že LiberSystem nevnímá jako náhradu Linuxu, ale spíše jako experiment. Právě to je možná nejrozumnější způsob, jak se na celý projekt dívat.

LiberSystem zatím nemusí porazit Windows ani Linux, aby byl zajímavý. Může posloužit jako praktická laboratoř pro myšlenky, které se u systému s desítkami let historie zavádějí podstatně obtížněji. Vývojáři navíc zveřejnili nejen zdrojový kód, ale také technickou dokumentaci, návrh architektury, popis bezpečnostního modelu a informace o LiberFS. Projekt je uvolněný pod licencí Unlicense.

Zda z experimentálního operačního systému jednou vznikne platforma použitelná mimo vývojářské a výzkumné prostředí, je v této chvíli předčasné hodnotit. Už samotný pokus napsat vlastní mikrojádro, systémové služby a souborový systém a zároveň opustit některé tradiční unixové principy je ale v době, kdy většina nových systémů staví na existujících základech, technicky pozoruhodný.

A možná je to také nejzajímavější otázka, kterou LiberSystem otevírá. Ne zda dokáže nahradit Linux, ale zda bychom operační systém navržený dnes skutečně postavili stejným způsobem jako systémy, jejichž základní principy vznikaly před několika desítkami let.