Ilmaisen UNIX-tyyppisen käyttöjärjestelmän OpenBSD 7.7 julkaisu esitellään. Theo de Raadt perusti OpenBSD-projektin vuonna 1995 sen jälkeen, kun NetBSD-kehittäjien kanssa oli konflikti, joka esti Theolta pääsyn NetBSD CVS -tietovarastoon. Sen jälkeen Theo de Raadt ja ryhmä samanhenkisiä loi uuden avoimen NetBSD-lähdepuuhun perustuvan käyttöjärjestelmän, jonka tärkeimmät kehitystavoitteet olivat siirrettävyys (13 laitteistoalustaa tuetaan), standardointi, oikea toiminta, ennakoiva tietoturva. ja integroidut salaustyökalut. OpenBSD 7.7 -perusjärjestelmän asennuksen ISO-otoksen koko on 746 MB.
Itse käyttöjärjestelmän lisäksi OpenBSD-projekti tunnetaan komponenteistaan, jotka ovat yleistyneet muissa järjestelmissä ja ovat osoittautuneet yhdeksi turvallisimmista ja laadukkaimmista ratkaisuista. Niitä: LibreSSL (OpenSSL-haarukka), OpenSSH, PF-pakettisuodatin, OpenBGPD- ja OpenOSPFD-reititysdaemonit, OpenNTPD NTP-palvelin, OpenSMTPD-sähköpostipalvelin, tekstipäätemultiplekseri (samanlainen kuin GNU-näyttö) tmux, identd-daemon IDENT-protokollan toteutukselle, BSDL-vaihtoehto GNU groff -paketti - mandoc, CARP (Common Address Redundancy Protocol) -protokolla vikasietoisten järjestelmien järjestämiseen, kevyt http-palvelin, OpenRSYNC-tiedostojen synkronointiapuohjelma.
Suurimmat muutokset:
- DRM (Direct Rendering Manager) -kehyksen toteutus on synkronoitu Linux-ytimen 6.12.21 (edellisessä versiossa - 6.6.52) kanssa. Inteldrm-ohjain tukee Arrow Lake -mikroarkkitehtuuriin perustuvaa Intel-suorittimissa käytettävää GPU:ta. Amdgpu-ohjain on päivitetty tukemaan Ryzen AI 300 (Strix Point, Strix Halo, Krackan Point) ja Radeon RX 9070 (Navi 48) GPU:ita.
- ARM64-arkkitehtuurin portti tukee SVE (Scalable Vector Extension) -vektorikäskysarjaa. Apple M1 ARM -siruilla varustetuissa järjestelmissä virrankulutustilat asetetaan. Fyysisen muistin sivukartoitus (pmap) -mekanismissa on optimoitu käännöspuskurin (TLB) huuhtelutoiminnot, mikä on nopeuttanut ytimen kokoonpanotestin suorittamista noin 5 %. QARMA3-salausta tukevassa laitteistossa Pointer Authentication Code (PAC) on otettu käyttöön käyttäjätilan suojaamiseksi.
- x86_64-järjestelmissä on toteutettu tuki virtualisointijärjestelmissä suojaukseen käytetylle AMD SEV (Secure Encrypted Virtualization) -mekanismille QEMU:ta käyttäville vierasjärjestelmille. virtuaalikoneet Hypervisorin tai isäntäjärjestelmänvalvojan aiheuttamista häiriöistä. PSP-ajuriin, jota käytetään vierasjärjestelmien määrittämiseen ja käynnistämiseen AMD SEV käytössä, on lisätty komento laiteohjelmiston lataamiseksi sirulle.
- x86_64-järjestelmiin on lisätty mahdollisuus varata yli 4 Gt:n muistialueita DMA:lle.
- Parannettu tuki RISC-V-, Sparc64-, HPPA-, i386- ja Powerpc64-arkkitehtuureille.
- Muisti loppuu (OOM) -tilanteiden parannettu käsittely.
- Ptrace-jäljitysmekanismia on parannettu, jotta se mahdollistaa keskeytyspisteiden asettamisen monisäikeisissä prosesseissa gdb-debuggerissa. Lisätty komennot sen alueen lukemiseen ja kirjoittamiseen, johon valvottu prosessi tallentaa prosessorin tilan XSAVE-käskyä käytettäessä.
- Tuki monirivisille rakenteille on lisätty btrace-jäljitysjärjestelmässä käytettyihin BT (BPFtrace tai Bug Tracing) -skripteihin. Muita profiileja ja aikavälien nimeämistä (hz, us, ms, s) on lisätty btrace-apuohjelmaan.
- Lisätty sysctl-parametri kern.audio.kbdcontrol, kun se on asetettu arvoon 0, näppäimistön multimedian äänenvoimakkuuden säätönäppäimiä käsitellään tavallisina näppäiminä.
- Parannettu törmäyskäsittely ja laajemmat tarkastukset siirtyessä lepotilaan ja valmiustilaan.
- Muokattu koodi prosessien pysäyttämiseksi, kun signaali vastaanotetaan, mikä ratkaisi ongelmat monisäikeisten prosessien pysäyttämisessä, jotka esiintyivät pakkauksissa, kuten golang ja mpv.
- Parannettu tuki moniprosessorijärjestelmille (SMP). TCP-tulo- ja lähtöajastimet ovat nyt käytössä rinnakkain, ja send()- ja recv()-järjestelmäkutsut on nyt määritetty käyttämään jaettua lukitusta. Useat käyttäjäsäikeet voivat nyt työskennellä eri pistokkeissa rinnakkain, eikä TCP-lähtö enää estä IP-pakettien käsittelyä.
Open-, openat-, ptsignal-, psignal- ja prsignal-järjestelmäkutsut sekä kern.timeout_stats, kern.allowkmem, kern.video.record, net.inet.gre.allow, net.inet.gre.wccp, kern.global_ptrace, kern.wxabort, kernlstas.mallocs ccmt globalllocks.mallocs. Psp-, wsmouse- ja wstpad-ajurit sekä video_filtops-rakenne on siirretty mp-safe-luokkaan.
- VMM-hypervisor on ottanut käyttöön mahdollisuuden käyttää acpipciä PCI-väylien liittämiseen.
- Tarjosi mahdollisuuden määritellä vaihtoehtoinen suorituskykykäytäntö (perfpolicy), jota sovelletaan, kun järjestelmä toimii akkuvirralla.
- Sysctl-komennolla on nyt "-f file" -vaihtoehto, joka lataa kaikki asetukset tiedostosta kerralla. rc-skripteissä käytetään uutta vaihtoehtoa sysctl.conf:n lataamiseen kokonaisuutena sen sijaan, että sitä jäsennettäisiin rivi riviltä.
- Komento pkg_add toteuttaa kutsun ldconfigille, jos jaettujen kirjastojen luettelo on muuttunut uusien pakettien asennuksen seurauksena.
- Lisätty tuki uusille laitteille. Parannettu tuki MediaTek- ja Qualcomm Snapdragon SoC:ille (mukaan lukien X Elite). Parannettu tuki Samsung Galaxy Book4 Edgelle, ThinkPad T14 Gen 5:lle, Vivobookille, ThinkPad X1 Nano Gen 2:lle, ThinkPad X13:lle ja useille Chromebookeille. Lisätty jääohjain Intel E810 Ethernet 1Gb/10Gb/25Gb/50Gb/100Gb ja ixv-ohjain Intel Ethernet 82598EB, 82559 ja X540 virtuaalisille toiminnoille. Työ verkkotoimintojen siirtämiseksi verkkokortin puolelle on jatkunut.
- Sysupgradessa on tila järjestelmien offline-päivitykseen käyttämällä paikalliseen tiedostojärjestelmään tallennettuja paketteja.
- Fw_update-apuohjelma on päivitetty mahdollistamaan laiteohjelmiston lataamisen (ei asentamisen) tavallisena käyttäjänä ilman pääkäyttäjän oikeuksia. Lisätty "-l"-lippu ohjaimien ja tiedostojen luetteloon.
- Sshd-auth-prosessissa on suojaus haavoittuvuuksien hyväksikäyttöä vastaan, joka perustuu suoritettavan tiedoston satunnaiseen uudelleenlinkitykseen jokaisen järjestelmän käynnistyksen yhteydessä (uudelleenlinkitys). Rekombinanttikoodi tekee funktiosiirtymistä vähemmän ennustettavissa, mikä vaikeuttaa hyödyntämistoimintojen luomista, jotka käyttävät paluusuuntautuneita ohjelmointitekniikoita.
- Liitäntäprosessi eristetään käyttämällä Unveil-järjestelmäkutsua.
- Verkkopino tukee AF_FRAME-liittimiä ja IFT_ETHER-protokollaperhettä, jolloin sovellukset voivat lähettää ja vastaanottaa Ethernet-kehyksiä. Lähteville UDP- ja TCP-paketeille on otettu käyttöön uusi hajautusmenetelmä, joka on optimoinut liikenteen jakautumisen jonoille ja merkittävästi (~20 %) nopeuttanut UDP:n lähettämistä IPv4/IPv6:lle ja TCP:n lähettämistä IPv6:lle. Tun-laitteessa on TUNSCAP ioctl toteutettu ja ytimen ja käyttäjätilan välinen vuorovaikutus on optimoitu. Jokaiselle vuolle on otettu käyttöön erillinen reititysvälimuisti. Vio-ohjaimessa on monijonotila käytössä.
- pfctl-apuohjelma mahdollistaa verkkoliitäntöjen ja jonojen määrittämisen yli 4 Gbitin suorituskyvyllä.
- Ikedissä, IKEv2-protokollan toteutuksessa IPsecille, "natt"-vaihtoehto on lisätty pakottamaan nat-t:n käyttöön.
- Relayd, pyyntöjen uudelleenohjaukseen ja tasapainottamiseen tarkoitettu taustaprosessi, tukee nyt asiakaspuolen toimintoja. TLS-varmenteet.
- Verkon suorituskyvyn mittaustyökalu tcpbench on lisännyt TLS-tuen.
- bgpd toteuttaa tuen RFC 8654:lle (BGP Extended Message), RFC 8538:lle (BGP Notification Message), "hylkää as-set" -vaihtoehto on oletuksena käytössä ja Adj-RIB-Out-välimuisti on käytössä.
- LibreSSL 4.1.0 lisää kokeellisen tuen loongarch64-arkkitehtuurille, tarjoaa uusia SHA-1-, SHA-256- ja SHA-512-asentaja-toteutuksia amd64-arkkitehtuurille (käyttäen SHA-NI-ohjetta), SHA-256:n ja SHA-512:n uudet assembler-toteutukset, yksinkertaistetun A-64MD-laajennuksen 5. amd64 tarjoaa peruutettujen sertifikaattien (CRL) luettelon välimuistin ja siirsi ML-KEM 768- ja 1024-toteutuksen BoringSSL:stä.
- OpenSSH on päivitetty. Lista muutoksista löytyy OpenSSH 10 -ilmoituksesta (DSA-digitaalisen allekirjoituksen tuki on poistettu, todennustoiminnot on erotettu erilliseksi sshd-auth-prosessiksi ja oletuksena käytössä hybridiavaimenvaihtoalgoritmi “mlkem768x25519-sha256”).
- AMD64-arkkitehtuurin porttien määrä oli 12593 (oli 12312), aarch64:lle - 12446 (oli 12148), i386:lle - 10429 (oli 10534). Porttien sovellusten versioista:
- Tähti 16.30.1, 18.26.1, 20.13.0 ja 22.3.0
- Audacity 3.7.3
- CMake 3.31.6
- Kromi 135.0.7049.52
- Emacs 30.1
- FFmpeg 6.1.2
- GCC 8.4.0 ja 11.2.0
- GNOME 47
- Mene 1.24.1
- JDK 8u442, 11.0.26, 17.0.14 ja 21.0.6
- KDE Gears 24.12.3
- KDE-kehykset 6.12.0
- KDE Plasma 6.3.3
- Krita 5.2.9
- LLVM/Clang 13.0.0, 16.0.6, 18.1.8, 19.1.7
- LibreOffice 25.2.1.2
- Lua 5.1.5, 5.2.4, 5.3.6, 5.4.7
- MariaDB 11.4.5
- Mustavalkoinen 6.12.0.199
- Mozilla Firefox 137.0 ja ESR 128.9.0
- Mozilla Thunderbird 128.9.0
- Mutt 2.2.14 ja NeoMutt 20250113
- Solmu.js 22.14.0
- OpenLDAP 2.6.9
- PHP 8.2.28, 8.3.19 ja 8.4.5
- Postfix 3.10.1
- PostgreSQL 17.4
- Python 2.7.18 ja 3.12.9
- Qt 5.15.16 (+ korjaukset KDE-projektista) ja 6.8.2
- Ruby 3.2.8, 3.3.7, 3.4.2
- Ruoste 1.86.0
- SQLite 3.49.1
- Shotcut 25.01.25
- Sudo 1.9.16p1
- Meerkat 7.0.7
- Tcl/Tk 8.5.19 ja 8.6.16
- Vim 9.1.1265 ja Neovim 0.10.4
- Xfce 4.20.0
- OpenBSD 7.7:een sisältyvät päivitetyt kolmannen osapuolen komponentit:
- Xenocara-grafiikkapino perustuu X.Org 7.7:ään ja xserver 21.1.16 + korjaustiedostot, freetype 2.13.3, fontconfig 2.15.0, Mesa 23.3.6, xterm 395, xkeyboard-config 2.20, fonttosfnt 1.2.4.
- LLVM/Clang 16.0.6 (+ korjaustiedostoja)
- GCC 4.2.1 (+ korjaustiedostoja) ja 3.3.6 (+ korjaustiedostoja)
- Perl 5.40.1 (+ korjaustiedostot)
- NSD 4.9.1
- Ei sitoumuksia 1.22.0
- Ncurses 6.4
- Binutils 2.17 (+ korjaustiedostot)
- Gdb 6.3 (+ korjaustiedostot)
- Helmikuu 20250116
- Expat 2.7.1
- zlib 1.3.1 (+ korjaustiedostot)
Lähde: opennet.ru
