Novinky v systémech NetBSD 10.0 a OpenBSD 7.5
Od doby, kdy jsem psal o vydání nové velké verze NetBSD již uplynulo více než čtyři roky, a protože zůstává věrno svému mottu "Of course it runs NetBSD" je na těch 56 podporovaných platformách novinek více než malé množství.
Padesát šest podporovaných počítačových platforem zní jako obří číslo a také to nepochybně obří číslo je, nicméně to nejpodstatnější se samozřejmě odehrává na pár hlavních, s nimiž se běžný smrtelník, a tudíž i vývojář NetBSD může potkat. A z této podmnožiny jsou v dnešní době nejdůležitější dvě - x86_64 a AArch64 - kde došlo k vcelku zásadnímu zvýšení rychlosti systému, dle benchmarků provedených přímo členy NetBSD Core Group je v některých případech výkon až dvojnásobný proti předchozímu, tedy devítkovému release. Za touto pozitivní změnou stojí zejména úpravy systémového scheduleru, který lépe pracuje s modelem big.LITTLE, hyperthreadingem či NUMA a také bylo na uvedených architekturách zapracováno na optimalizaci I/O operací. Ke zrychlení, byť ne takto dramatickému, došlo i jinde - ve strojově nezávislé části jádra byl změněn algoritmus pro průchod souborovou cache, což se projevuje na všech platformách.
Dále byla vylepšena virtualizace a to na obou stranách barikády: NetBSD lépe běží ve virtualizaci i samo lépe virtualizuje jiné systémy. V rámci virtualizace Xen podporuje PVH, Dom0 jádra mají zapnuté SMP a verze jádra určená pro Xen používají stejné moduly, jako jádra běžící nativně. Mezi VirtIO ovladači najdeme nový driver vio9p, který umožňuje připojovat filesystémy protokolem 9P nebo sériový ovladač viocon. A pokud virtualizujete v NetBSD něco jiného, pak vás jistě poteší, že systémy spuštěné pod NetBSD Virtual Machine Monitor nyní nemají problém s uspáním a probuzením hostovského stroje.
Ačkoliv bezpečnost není primárním cílem NetBSD, i zde najdeme novinky, které systém v této oblasti posouvají o kus dále. NetBSD 10.0 podporuje VPN dle standardu WireGuard, byť je ovladač wg, který podporu přidává pouze experimentální a ve výchozím stavu vypnutý. Verze NetBSD pro procesory ARMv8-A umí nově používat bezpečnostní prvky obsažené přímo v procesoru, konkrétně Privileged Access Never, Pointer Authentication a Branch Target Identification. Systém také zrychlil šifrování disků na počítačích, které nemají hardwarovou akceleraci AES.
Jak již bylo uvedeno, systém podporuje 56 platforem, devět z nich je podporováno v rámci Tier I přímo autory, zbylé má jako Tier II na starosti komunita. Žádný port nebyl v této verzi označen jako nefunkční. Více novinek včetně všech významných čísel verzí jednotlivých komponent najdete v oznámení o vydání a tamtéž se také můžete proklikat k instalačním souborům.
OpenBSD 7.5
To u OpenBSD nejde o žádnou přelomovou major verzi - vychází dvakrát ročně a verze 7.5 je prostě jen další pravidelné vydání v řadě. Novinek je tedy méně, ale přesto některé stojí za zmínku.
Z Asahi Linuxu portované kernel mode-setting ovladače zrychlily vykreslování obrazu na počítačích založených na Apple Silicon (AArch64), byť se nejedná o akceleraci grafiky v pravém slova smyslu. Dále v systému najdeme nové ovladače qwx a mwx, které zavádějí podporu některých WiFi čipů od Qualcommu a Mediateku.
Jelikož u OpenBSD bezpečnost hlavním cílem je, došlo k poměrně velkému zásahu do možnosti volání služeb jádra systému. Po několika měsících vývoje byla přímo Theo De Raadtem odstraněna funkce syscall, která doposud umožňovala volání služeb jádra systému odkudkoliv. Možnosti, odkud lze tyto služby volat, jsou nově omezeny - je k tomu nutné použít bezpečný mechanismus zvaný pinsyscalls. Kód volající původní funkci byl upraven tak, aby ji již nepotřeboval.
OpenBSD 7.5 podporuje 14 počítačových platforem, byť i zde je jasně patrno, že dominantní jsou x86_64 a AArch64 - pro každou z nich najdete v repozitáři více než 12000 binárních balíčků. Další dvě místa zaujímají RISC-V a i386, každá se zhruba 10500 balíčky a zbytek pak už jen na tato čísla hledí zpovzdálí. Více detailů i zde samozřejmě najdete v oznámení o vydání verze.
Oba systémy se bezproblémově instalují a běží i na notně historickém hardware, který pro jejich testování mám vyhrazen. O rychlosti NetBSD na sedmnáct let starém notebooku HP 2510p s 2 GB RAM a čínským mSATA SSD v redukci na ZIF IDE nemá vůbec smysl psát - jde-li systém na Amize 3000, pak zde přímo pádí. OpenBSD, které se na starý hardware nezaměřuje, však překvapilo relativní svižností na starém tenkém klientu Wyse Cx0, který má jednojádrový/jednovláknový procesor Via Eden, taktéž 2 GB RAM a místo pevného disku kartu CompactFlash v redukci.
Ve chvíli, kdy spustíte webový prohlížeč, sice vyletí vytížení procesoru na sto procent, a pokud k tomu přidáte ještě něco trochu náročnějšího mimo prohlížeč, tak tam i zůstává. Obraz se ale (díky podpoře integrované grafiky Unichrome) stále překresluje plynule, na přepnutí oken ani pracovních ploch se nečeká a nové terminály se stále objevují ihned, jakmile zmáčknete Enter za příkazem xterm. To vše navzdory tomu, že výkon celého počítače je zhruba stejný, jako notebooku, jehož recenze tu byla na apríla.