Nakon šest mjeseci razvoja, objavljen je FreeBSD 15.1. Instalacijske građevine pripremljene su za arhitekture amd64, aarch64, armv7, powerpc64, powerpc64le i riscv64. Dodatno, isporučuju se građevine za virtualizacijske sustave (QCOW2, VHD, VMDK, raw) i oblačna okruženja Amazon EC2, Google Compute Engine i Vagrant. Izdanje FreeBSD 15.1 će se podržavati do aprila 2027. godine, a ažuriranja za granu 15.x biće izdavana do 31. decembra 2029. godine.
Glavne promjene:
- Vozači bežičnih uređaja rtw88 (Realtek 802.11n/ac), rtw89 (Realtek 802.11ax) i iwlwifi (Intel 802.11a/b/g/n/ac/ax/be) usklađeni su s Linux kernelom 7.0.
- U jezgru je implementiran okvir za odabir planera zadataka. U konfiguraciji jezgra na sustavima amd64, pored unaprijed zadatog planera SCHED_ULE, aktivirana je građevina klasičnog planera zadataka SCHED_4BSD. Za odabir planera zadataka tijekom pokretanja dodan je sysctl-parametar kern.sched.
- Obavljen je rad na osiguranju podrške za standard C23 u kodnoj bazi za izgradnju kompajlerima u režimu C23. Potpuna podrška za C23 očekuje se u grani FreeBSD 16. U novom standardu dodane su konstante nullptr, tip _BitInt(n) i ključne riječi bool, true i false, koje su mogle biti u sukobu s postojećim identifikatorima sa istim nazivima u starom kodu. Podrška za C23 omogućit će korištenje novih mogućnosti jezika u kodu FreeBSD, kao što su zaglavlje stdbit.h, funkcija memalignment(), ažurirani limits.h i stdint.h s makrosom _WIDTH i tipom char8_t.
- U paketu filtru ipfw implementirana je mogućnost postavljanja proizvoljnih maski u tablicama (lookup table), što omogućava ignoriranje bilo kojih kombinacija bitova u ključevima i elementima tablice, na primjer, može se koristiti neuredna maska IP adresa, poput „lookup src-ip4:255.255.253.255“. Uklonjen je kod za kompatibilnost s verzijama paketa filtra ipfw, koje su isporučivane prije izdanja FreeBSD 8.
- Odobreno je usmjeravanje IPv6 paketa u divert-sokete, u kojima je ranije bila dopuštena samo obrada IPv4. U timu ifconfig dodana je oznaka ‘stableaddr’ za generiranje stabilnih IPv6 adresa, koje su nepromjenljive za svaku podmrežu (Stateless Address Autoconfiguration, RFC 7217).
- Zadana komandna ljuska za korisnike „root“ i „freebsd“ zamijenjena je s csh na sh.
- Dodana je alatka setaudit za upravljanje politikama sistemskog audita.
- U alatku find dodane su opcije „-xattr“ i „-xattrname“ za pretraživanje datoteka uzimajući u obzir proširene atribute datoteka.
- U utilitet newfs dodana je opcija „-u” za onemogućavanje mehanizma softverskih ažuriranja i journalinga za UFS2.
- Zadano je uklonjena utilita ipfs, koja se koristila za spremanje i obnavljanje tablica prevođenja adresa, a onemogućena je potrebna funkcionalnost u kernelu (može se ponovo uključiti u postavkama gradnje).
- U skriptu bsdinstall zadano je uključena instalacija pkgbase s komponentama navedenim u varijabli COMPONENTS. Stara metoda instalacije temelji se na distsetu ostaje dostupna, ako je definirana varijabla DISTRIBUTIONS.
- U standardne biblioteke dodane su funkcije tdestroy,
strdupa,
strndupa,
posix_spawnattr_getexecfd_np,
posix_spawnattr_setexecfd_np,
pthread_tryjoin_np.
U funkcijama memcpy, memmove i memset na sustavima AArch64 korištene su optimizacije temeljem instrukcija MOPS (Memory Operations). - Dodana je biblioteka libuvmem s implementacijom mehanizma raspodjele memorije vmem, koja radi u korisničkom prostoru i predstavlja API kompatibilan s vmem za aplikacije.
- U slike za virtualnih mašina i oblačne sustave uključen je paketni menadžer pkg i implementirana je podrška za atomsko ažuriranje paketa s osnovnim sustavom pri prvom pokretanju.
- U konfiguraciju jezgre MINIMAL uključen je drajver virtio_scsi, koji omogućuje pokretanje sustava u virtualnim mašinama temeljenom na qemu/kvm.
- Implementirani su sustavni pozivi pdwait i pdfork za novi mehanizam stvaranja i završavanja procesa, koji koristi deskriptor procesa.
- U sloj za kompatibilnost s Linuxom dodan je fcntl F_DUPFD_QUERY, koji koristi kcmp KCMP_FILE za provjeru datotečnog deskriptor u Linux kontejnerima.
- Uključena je gradnja drajvera iwx za bežične adaptere Intel AX210 / AX211 / AX411 s podrškom za Wi-Fi 6E i Wi-Fi 7.
- Ažurirani su drajveri. Dodana je podrška za mrežne adaptere Intel E835-XXV-4 i Intel E835 Ethernet, RAID kontrolere koji se koriste u poslužiteljima Fujitsu PRIMERGY, kao i NVMe uređaje koji se koriste u Google Compute Engine C4. Poboljšana je podrška za Raspberry Pi platforme. Dodana je podrška za brojače praćenja performansi (hwpmc), koji se pružaju u CPU Intel Alder Lake, Alder Lake-N i Emerald Rapids.
- Drajver hid podešen je za omogućavanje pristupa korisnicima grupe game, što omogućuje pristup igraćim kontrolerima bez podizanja privilegija, koristeći biblioteke poput libsdl.
- U utilitetu mt osigurana je kompatibilnost s trakama koje podržavaju standarde LTO-10 i LTO-10P (Linear Tape-Open Generacija 10).
- U tim naredbi «zpool prefetch» dodana je podrška za BRT (Block Reference Table) metapodatke, što poboljšava performanse kloniranja i oslobađanja blokova.
- Klijent NFS sada podržava izvoz NFS datotečnih sustava koji ne uzimaju u obzir velika i mala slova u imenima datoteka i direktorija.
Pri pokretanju bez diska kroz NFSv4, implementirana je podrška za montiranje NFS particije kao korijenski FS i mapiranje imena ili identifikatora korisnika putem nfsuserd. Dodana je osnovna podrška za proširenje NFSv4.2 s POSIX ACL. server U klijent NFSv4 dodana je podrška za atribut arhiviranja (UF_ARCHIVE), koji se koristi u NFS klijentu Windows. - U sučelje splash dodana je mogućnost postavljanja pozadinske slike u PNG formatu koja se prikazuje prilikom isključivanja sustava.
- Dodana je sysctl net.inet.ipf.jail_allowed, koja omogućava vezivanje vlastitog skupa postavki i pravila za filtriranje paketa ipfilter u Jail okruženju.
- Dodana je sysctl allow.vmm_ppt za propuštanje pristupa PCI uređajima u izoliranim okruženjima temeljima hipervizora bhyve.
- U GPU drajveru temeljenom na virtio, implementirana je podrška za virtualna okruženja temeljenim na Parallels Desktop.
- Dodana je podrška za registre FGT (Fine-Grained Trap), mehanizam Extended Destination ID i MOPS (Memory Operations) instrukcije, koje proširuju mogućnosti virtualizacije i poboljšavaju performanse na ARM64 sustavima. Dodana je podrška za ARM64 proširenje LASS (Linear Address Space Separation) za pojačanu izolaciju između jezgre i prostora korisnika.
- U implementaciju frame buffera hipervizora bhyve dodana je podrška za UNIX sokete, što omogućava propuštanje grafičke konzole u Jail-ove bez mreže.
- Ažurirane verzije OpenZFS 2.4.2, OpenSSL 3.5.6, NSS 3.123.1, xz 5.8.3, tcpdump 4.99.6, zlib 1.3.2, zstd 1.5.7, blocklistd 2026-02-07, ncurses 6.6, bsddialog 1.0.5, bmake 20251111, SQLite 3.50.4, unbound 1.25.1, MIT Kerberos 1.22.2, Heimdal Kerberos 1.22.2.
- Konzolni font spleen ažuriran je na verziju 2.2.0 i proširen dodatnim simbolima (dugački crt, kratki crt, spojnik, kutni znakovi, bijeli kvadrat, križ i dvostruki križ). Poboljšano je poravnanje simbola na ekranima visoke gustoće pixela. Unicode tablice simbola ažurirane su na verziju 17.0.0, koja je dodala 4803 simbola.
- Pod sustav blacklist preimenovan je u blocklist s pozadinskim procesom blocklistd. Stare postavke u rc skriptama i pravilima filtriranja paketa i dalje važe, ali izazivaju prikazivanje upozorenja.
- OpenPAM alat je premješten u novi paket FreeBSD-pam, dok su Zstandard biblioteka i zstd alat prebačeni u paket FreeBSD-zstd.
- Na sustavima instaliranim putem paketa freebsd-base, blokiran je poziv skripti za instalaciju installworld i installkernel kako bi se izbjegla nesuglasja između stanja sustava i paketa.
- Formiranje OCI (Oracle Cloud Infrastructure) paketa je prekinuto.
- Označeni su kao zastarjeli i bit će uklonjeni u grani FreeBSD 16 alati fdisk, bsdlabel, lpr, lpd, lpc, lpq, lprm, lp, pac, lptest i chkprintcap. Umjesto fdisk i bsdlabel preporučuje se koristiti gpart ili bsdinstall za rad s particijama, dok bi se za organizaciju ispisa trebali koristiti port print/cups ili sysutils/LPRng. Također se planira ukloniti sysctls hw.ata.rotating i hw.ata.unmapped_io u FreeBSD 16, kao i drajveri hifn (kriptoakceleratori Hifn 7751/7951/7811/7955/7956), safe (kriptoakceleratori SafeNet SafeXcel 1141/1741), le (AMD Am7900 LANCE i Am79C9xx ILACC/PCnet Ethernet), fdc (kontroler floppy diska) i agp (Accelerated Graphics Port).
Izvor: opennet.ru
