Mám rád Linux, ale dlouhodobě mi na jeho (a obecně unixovém) modelu nelíbí pár věcí, především:
- myšlenka "everything is file". Historicky to asi dávalo smysl, ale dnes často potřebujeme různé reprezentace všech možných systémových prostředků (např. ve formě serializovaných objektů apod.)
- mi přijde, že házet do jedné stromové struktury soubory na disku, zařízení, procesy, sockety, systémové informace apod. je dost nepřehledné.
- navíc v této struktuře povolovat kamkoliv mount pointy, které při odmountování pak ukazují u stejné cesty na jiné zařízení, mi přijde skoro až nebezpečné (např. po restartu se nenamountuje nějaké úložiště a místo toho služby začnou ukládat na systémový disk apod. (jasně, dá se tomu nějak předejít, ale to už jsou workaroundy)
... a pár dalších věcí.
Proto jsem si položil otázku: Kdybych OS navrhoval od nuly, jak bych to dělal jinak?
A tak jsem si navrhnul a vyvinul vlastní kernel a userspace a výsledkem je můj experimentální open-source systém -
LiberSystem :-)
-
mikrokernelový OS napsaný v Rustu, založený na typovaných objektech, capability-based bezpečnosti, izolovaných službách/ovladačích a explicitních volumes místo klasických mountpointů.
Neberu to jako náhradu Linuxu, spíš jako takový experiment.
Zajímalo by mě: dává vám takový směr smysl, nebo je pro Vás unixový model pořád to nejlepší?
Více info o mém projektu:
https://libersystem.comZdrojáky:
https://github.com/libersoft-org/libersystem