Byla představena nová verze svobodného UNIX-like operačního systému OpenBSD 7.8. Projekt OpenBSD byl založen Theem de Raadtem v roce 1995 po konfliktu s vývojáři NetBSD, kvůli kterému byl Theovi uzavřen přístup k CVS repozitáři NetBSD. Po této události založil Theo de Raadt s skupinou příznivců nový otevřený operační systém na základě stromu zdrojových kódů NetBSD, jehož hlavními cíli byly přenositelnost (podpora 13 hardwarových platforem), standardizace, správné fungování, proaktivní bezpečnost a integrované kryptografické prostředky. Velikost plného instalačního ISO obrazu základního systému OpenBSD 7.8 činí 597 MB.
Kromě samotného operačního systému je projekt OpenBSD znám svými komponenty, které se rozšířily v jiných systémech a prokázaly se jako jedno z nejbezpečnějších a nejkvalitnějších řešení. Mezi nimi: LibreSSL (fork OpenSSL), OpenSSH, paketový filtr PF, démony směrování OpenBGPD a OpenOSPFD, NTP server OpenNTPD, poštovní server OpenSMTPD, multiplexer textového terminálu (analog GNU screen) tmux, démon identd s implementací protokolu IDENT, BSDL alternativa k balíku GNU groff — mandoc, protokol pro zajištění vysoké dostupnosti systémů CARP (Common Address Redundancy Protocol), lehký http server, utilita pro synchronizaci souborů OpenRSYNC.
Hlavní změny:
- V portu pro architekturu ARM64 byla přidána podpora desek Raspberry Pi 5, implementován ovladač acpicpu, zajištěna funkčnost apm (Advanced Power Management) a sysctl hw.cpuspeed na zařízeních s čipy Qualcomm Snapdragon X Elite.
- Byla implementována podpora příznaku FD_CLOFORK (close-on-fork) pro uzavření souborového deskriptoru pro potomkové procesy po volání funkce fork(). Ve srovnání s ostatními implementacemi se tento příznak automaticky resetuje po volání funkce exec() z důvodů bezpečnosti a pohodlí.
- Byl přidán subsystém pro provádění vysoce úrovňových operací alokace, plánování a řízení softwarových přerušení (soft interrupt dispatcher).
- Jádro bylo převedeno na používání nanosekund místo tiků časovače při provádění funkce sleep, což pomáhá vyhnout se ztrátě přesnosti kvůli konverzím z nanosekund na tiky a zpět při iniciaci operací z knihovních funkcí v uživatelském prostoru.
- Byla zvýšena kompatibilita se souborovými systémy na bázi mechanismu FUSE (Filesystem in Userspace), při jejichž realizaci se používá knihovna libfuse.
- Vylepšena podpora spánkového a hibernovaného režimu. Zajištěno předběžné vyhrazení pracovní oblasti pro spánkový režim během spuštění. Přidána možnost použití hibernovaného režimu při připojování zařízení přes GPIO. Přidána podpora přechodu do hibernovaného režimu notebooků s CPU AMD při použití režimu snížené spotřeby S0ix. Implementován sysctl ddb.suspend, který umožňuje přeskočit přechod do hibernovaného režimu pro ovladače inteldrm a amdgpu, aby zůstal displej aktivní. Zvýšena spolehlivost hibernovaného režimu S3 při použití grafického ovladače amdgpu.
- Vylepšena podpora víceprocesorových systémů (SMP). Zajištěno paralelní zpracování TCP zásobníku na různých jádrech CPU. Pro zpracování TCP provozu a příchozích síťových paketů nyní může být použito až 8 vláken (ale ne více než jader CPU). Implementováno paralelní vykonávání operací přestavby fragmentů IPv6 paketů a analýzy parametrů směrování IPv6. Odstraněny globální zámky pro systémové volání close() a listen().
- Realizace rámce drm (Direct Rendering Manager) synchronizována s jádrem Linux 6.12.50 (v předchozím vydání 6.12.21). Přidány nové ovladače qcdrm a qcdpc pro DRM subsystém čipů Qualcomm Snapdragon a DisplayPort ovladače Qualcomm.
- Realizována podpora pro OpenBSD v virtual machines kvm/qemu při použití pro ochranu hostitelského systému rozšíření AMD SEV-ES (Encrypted State). Do hypervisoru vmd byla přidána možnost spouštění hostitelských systémů v režimu AMD SEV-ES, pro jehož aktivaci byl do vm.conf přidán parametr „seves“. Aktualizována emulovaná Virtio zařízení network, block, entropy a scsi, v nichž byla implementována podpora specifikace Virtio 1.2.
- Nástroj pkg-config byl přeložen z vlastní implementace v Perlu na využití nástroje pkgconf 2.4.3, napsaného v C.
- Jako nástroj watch, který pravidelně spouští příkazy a zobrazuje jejich výstup, byla použita aplikace iwatch.
- Do skriptu security, který provádí pravidelnou kontrolu bezpečnosti, byla přidána funkčnost pro vytváření záloh GPT/MBR. Pro obnovení kopie GPT/MBR ze souboru byla do nástroje fdisk přidána volba „-R“.
- Do pozadí procesu apmd byla přidána volba „-w procent“ a zpracovatel /etc/apm/warnlow pro organizaci výstupu varování při snížení úrovně nabití baterie pod určenou hodnotu.
- Byla zavedena nová profilovací systém gprof, využívající systémový hovor profil.
- Byla rozšířena podpora hardwaru a přidány nové ovladače:
- acpiwmi — Windows Management Instrumentation.
- amdpmc — ovladač správy spotřeby energie AMD.
- bcmmip — řadič MSI BCM2712.
- bcmstbgpio — řadič GPIO Broadcom.
- bcmstbintc — řadič př interrupts Broadcom.
- bcmstbpinctrl — Broadcom multiplexing pin.
- bcmstbrescal — řadič kalibrace resetu Broadcom.
- bcmstbreset — řadič resetu Broadcom.
- rpone — ovladač periferií Raspberry Pi RP1.
- rpiclock — kontroler hodin Raspberry Pi RP1.
- rpipwm — ovladač PWM Raspberry Pi RP1.
- rpirtc — reálný časový hodin Raspberry Pi.
- iasuskbd(4) — ASUS I2C HID.
- Do ovladače webové kamery uvideo byla přidána podpora kodeku H.264.
- Byl přidán běžící proces lldpd s implementací protokolů LLDP (Link Layer Discovery Protocol) a utility lldp pro jeho správu.
- Byl přidán běžící proces bpflogd pro zachycení síťových paketů pomocí bpf (Berkeley Packet Filter) a jejich zápis do logu ve formátu tcpdump.
- V iked, implementaci protokolu IKEv2 pro IPsec, byla přidána možnost načítání více certifikátů z souboru.
- Knihovna LibreSSL byla aktualizována na verzi 4.2.0, která nabízí API pro použití algoritmu výměny klíčů ML-KEM (CRYSTALS-Kyber), odolného vůči útokům kvantových počítačů.
- OpenSSH byl aktualizován. Seznam změn si můžete prohlédnout v oznámeních OpenSSH 10.1 a 10.2:
- Počet portů pro architekturu AMD64 činil 12651 (bylo 12593), pro aarch64 — 12506 (bylo 12446), pro i386 — 10457 (bylo 10429). Mezi verzemi aplikací v portech:
- Asterisk 22.5.2
- Audacity 3.7.5
- CMake 3.31.8
- Chromium 141.0.7390.54
- Emacs 30.2
- FFmpeg 6.1.3
- GCC 8.4.0 a 11.2.0
- GHC 9.8.3
- GNOME 48
- Go 1.25.1
- JDK 8u462, 11.0.28, 17.0.16, 21.0.8 a 25.0.0
- KDE Applications 25.08.1
- KDE Frameworks 6.18.0
- KDE Plasma 6.4.5
- Krita 5.2.13
- LLVM/Clang 19.1.7, 20.1.8 a 21.1.2
- LibreOffice 25.8.1.1
- Lua 5.1.5, 5.2.4, 5.3.6 a 5.4.7
- MariaDB 11.4.7
- Mono 6.12.0.199
- Mozilla Firefox 143.0.3 a ESR 140.3.1
- Mozilla Thunderbird 143.3.1
- Mutt 2.2.15 a NeoMutt 20250905
- Node.js 22.20.0
- OCaml 4.14.2
- OpenLDAP 2.6.10
- PHP 8.2.29, 8.3.26 a 8.4.13
- Postfix 3.5.25 a 3.10.1
- PostgreSQL 17.6
- Python 2.7.18 a 3.12.11
- Qt 5.15.16 (+ patche od kde) a 6.8.3
- R 4.5.1
- Ruby 3.2.9, 3.3.9 a 3.4.6
- Rust 1.90.0
- SQLite 3.50.4
- Shotcut 25.08.16
- Sudo 1.9.17p2
- Suricata 7.0.7
- Tcl/Tk 8.5.19 a 8.6.16
- TeX Live 2025
- Vim 9.1.1706 a Neovim 0.11.4
- Xfce 4.20.0
- Byly aktualizovány komponenty od třetích stran zahrnuté v OpenBSD 7.8:
- Grafický stack Xenocara založený na X.Org 7.7 s xserver 21.1.18 + patche, freetype 2.13.3, fontconfig 2.15.0, Mesa 25.0.7, xterm 399, xkeyboard-config 2.20, fonttosfnt 1.2.4.
- LLVM/Clang 19.1.7 (+ patche)
- GCC 4.2.1 (+ patche) a 3.3.6 (+ patche)
- Perl 5.40.1 (+ opravy)
- NSD 4.3.0
- Unbound 1.24.0
- Ncurses 6.4
- Binutils 2.17 (+ patche)
- Gdb 6.3 (+ patche)
- Awk 20250116
- Expat 2.7.3
- zlib 1.3.1 (+ opravy)
Zdroj: opennet.ru
