Efter seks måneders udvikling er FreeBSD 15.1 blevet udgivet. Installationsversioner er tilgængelige til arkitekturerne amd64, aarch64, armv7, powerpc64, powerpc64le og riscv64. Derudover er builds tilgængelige til virtualiseringssystemer (QCOW2, VHD, VMDK, raw) og cloud-miljøer som Amazon EC2, Google Compute Engine og Vagrant. FreeBSD 15.1 vil blive understøttet indtil april 2027, og opdateringer til 15.x-grenen vil blive udgivet indtil 31. december 2029.
Vigtigste ændringer:
- Trådløse enhedsdrivere rtw88 (Realtek 802.11n/ac), rtw89 (Realtek 802.11ax) og iwlwifi (Intel 02.11a/b/g/n/ac/ax/be) er synkroniseret med kernen. Linux 7.0.
- Kernen implementerer et framework til valg af opgaveplanlægger. Ud over standard SCHED_ULE-planlæggeren inkluderer kernekonfigurationen på amd64-systemer nu en version af den klassiske SCHED_4BSD-opgaveplanlægger. Parameteren kern.sched sysctl er blevet tilføjet for at vælge opgaveplanlæggeren ved opstart.
- Der er arbejdet med at sikre understøttelse af C23-standarden i kodebasen for compilere, der bygger i C23-tilstand. Fuld understøttelse af C23 forventes i FreeBSD 16-grenen. Den nye standard tilføjer nullptr-konstanterne, _BitInt(n)-typen og nøgleordene bool, true og false, som kan være i konflikt med identifikatorerne med samme navn, der er defineret i ældre kode. Understøttelse af C23 vil give FreeBSD-kode mulighed for at bruge nye sprogfunktioner, såsom stdbit.h-headerfilen, memalignment()-funktionen, opdaterede limits.h og stdint.h med _WIDTH-makroen og char8_t-typen.
- Pakkefilteret ipfw har mulighed for at angive vilkårlige masker i tabeller (opslagstabeller), hvilket giver dig mulighed for at ignorere enhver kombination af bits i nøgler og tabelelementer. For eksempel kan du bruge ikke-sekventielle masker. IP-adresser, såsom "opslag src-ip4:255.255.253.255. Fjernede kode for kompatibilitet med versioner af ipfw-pakkefilteret, der blev leveret før FreeBSD 8.
- IPv6-pakker kan nu routes til at omdirigere sockets, der tidligere kun understøttede IPv4. 'stableaddr'-flaget er blevet tilføjet til ifconfig-kommandoen for at generere stabile IPv6-adresser, der er konsistente på tværs af undernet (Stateless Address Autoconfiguration, RFC 7217).
- Standardshell'en for brugerne "root" og "freebsd" er blevet ændret fra csh til sh.
- Tilføjet setaudit-værktøjet til administration af systemrevisionspolitikker.
- Søgeværktøjet er blevet opdateret med mulighederne "-xattr" og "-xattrname" til at søge i filer baseret på udvidede filattributter.
- Værktøjet newfs er blevet opdateret med "-u"-funktionen til at deaktivere bløde opdateringer og journalføring for UFS2.
- Værktøjet ipfs, som blev brugt til at gemme og gendanne adresseoversættelsestabeller, er som standard blevet fjernet, og den funktionalitet, der kræves til dets drift, er blevet deaktiveret i kernen (dette kan gendannes i byggeindstillingerne).
- bsdinstall-skriptet installerer som standard pkgbase med de komponenter, der er angivet i COMPONENTS-variablen. Den ældre distset-baserede installationsmetode forbliver tilgængelig, hvis DISTRIBUTIONS-variablen er defineret.
- tdestroy-funktionerne er blevet tilføjet til standardbibliotekerne,
strdupa,
strndupa,
posix_spawnattr_getexecfd_np,
posix_spawnattr_setexecfd_np,
pthread_tryjoin_np.
Funktionerne memcpy, memmove og memset på AArch64-systemer bruger optimeringer baseret på Memory Operations (MOPS) instruktioner. - Libuvmem-biblioteket er blevet tilføjet, hvilket giver en brugerpladsimplementering af vmem-hukommelsesallokeringsmekanismen og en vmem-kompatibel API til applikationer.
- I billeder til virtuel maskine For cloud-systemer er pkg-pakkehåndteringen inkluderet, og understøttelse af atomær opdatering af pakken med basissystemet ved første opstart er implementeret.
- MINIMAL-kernekonfigurationen inkluderer virtio_scsi-driveren, som tillader systemet at starte i virtuelle maskiner baseret på qemu/kvm.
- Systemkaldene pdwait og pdfork er blevet implementeret til den nye mekanisme til oprettelse og afslutning af processer, der bruger procesbeskrivelser.
- I mellemlaget for kompatibilitet med Linux Tilføjet fcntl F_DUPFD_QUERY, som bruger kcmp KCMP_FILE til at kontrollere filbeskrivelsen i Linux-containere.
- En version af iwx-driveren til trådløse Intel AX210/AX211/AX411-adaptere med Wi-Fi 6E- og Wi-Fi 7-understøttelse er inkluderet.
- Drivere er blevet opdateret. Der er tilføjet understøttelse af Intel E835-XXV-4 og Intel E835 Ethernet-netværkskortene, samt RAID-controllere, der bruges i servere Fujitsu PRIMERGY, samt NVMe-drev brugt i Google Compute Engine C4. Forbedret understøttelse af Raspberry Pi-kort. Tilføjet understøttelse af performance tracking counters (hwpmc) leveret af Intel Alder Lake, Alder Lake-N og Emerald Rapids CPU'er.
- hid-driveren er konfigureret til at give adgang til brugere af spilgruppen, hvilket tillader adgang til spilcontrollere uden privilegieeskalering ved hjælp af biblioteker som libsdl.
- mt-værktøjet giver kompatibilitet med båndstationer, der understøtter LTO-10- og LTO-10P-standarderne (Linear Tape-Open Generation 10).
- zpool prefetch-kommandoen understøtter nu BRT (Block Reference Table) metadata, hvilket forbedrer ydeevnen af blokkloning og deallokering.
- NFS-klienten understøtter nu eksport af filsystemer via NFS, der ikke skelner mellem store og små bogstaver i forhold til fil- og mappenavne.
Understøttelse af montering af en NFS-partition som rodfilsystem og tilknytning af brugernavne eller ID'er via nfsuserd er blevet implementeret til diskløs opstart via NFSv4. Indledende understøttelse af NFSv4.2-udvidelsen med POSIX ACL'er er blevet tilføjet. server og NFSv4-klienten tilføjede understøttelse af arkiveringsattributten (UF_ARCHIVE), der bruges i NFS-klienten. Windows. - Splash-grænsefladen giver dig nu mulighed for at indstille en splash-skærm i PNG-format, der skal vises, når systemet lukker ned.
- Tilføjet sysctl net.inet.ipf.jail_allowed, som giver dig mulighed for at binde dit eget sæt af ipfilter-pakkefilterindstillinger og -regler til jail-miljøet.
- Tilføjet sysctl allow.vmm_ppt for at videresende adgang til PCI-enheder til isolerede miljøer baseret på bhyve-hypervisoren.
- Den virtio-baserede GPU-driver implementerer understøttelse af virtuelle miljøer baseret på Parallels Desktop.
- Tilføjet understøttelse af Fine-Grained Trap (FGT)-registre, Extended Destination ID og Memory Operations (MOPS)-instruktioner, udvidet virtualiseringsfunktioner og forbedret ydeevne på ARM64-systemer. Understøttelse af ARM64 LASS (Linear Address Space Separation)-udvidelsen er blevet tilføjet for at forbedre isoleringen mellem kernen og brugerområdet.
- Implementeringen af bhyve hypervisor framebuffer er blevet opdateret til at understøtte UNIX-sockets, hvilket tillader, at den grafiske konsol videresendes til jails offline.
- Opdaterede versioner af 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.
- Spleen-konsolfonten er blevet opdateret til version 2.2.0 og udvidet med yderligere tegn (em-bindestreg, en-bindestreg, bindestreg, vinkelparenteser, hvid firkant, kryds og dobbelt kryds). Tegnjusteringen er blevet forbedret på skærme med høj tæthed. Unicode-tegntabeller er blevet opdateret til version 17.0.0, hvilket har tilføjet 4803 tegn.
- Blacklist-undersystemet er blevet omdøbt til blocklist med blocklistd i baggrunden. Gamle indstillinger i rc-scripts og pakkefilterregler forbliver gældende, men vil resultere i en advarsel.
- OpenPAM-værktøjssættet er blevet flyttet til den nye FreeBSD-pam-pakke, og Zstandard-biblioteket og zstd-værktøjet er blevet flyttet til FreeBSD-zstd-pakken.
- På systemer installeret via freebsd-base-pakker er kald af byggeskripterne installworld og installkernel deaktiveret for at undgå uoverensstemmelse mellem systemtilstanden og pakkerne.
- Genereringen af assembleringer i OCI-formatet (Oracle Cloud Infrastructure) er udgået.
- Følgende værktøjer er blevet forældet og vil blive fjernet i FreeBSD 16-grenen: fdisk, bsdlabel, lpr, lpd, lpc, lpq, lprm, lp, pac, lptest og chkprintcap. Til arbejde med diskpartitioner anbefales det at bruge gpart eller bsdinstall i stedet for fdisk og bsdlabel. Til udskrivning skal du bruge print/cups-porten eller sysutils/LPRng. FreeBSD 16 planlægger også at fjerne sysctl'erne hw.ata.rotating og hw.ata.unmapped_io, samt hifn (Hifn 7751/7951/7811/7955/7956 kryptoacceleratorer), safe (SafeNet SafeXcel 1141/1741 kryptoacceleratorer), le (AMD Am7900 LANCE og Am79C9xx ILACC/PCnet Etherne), fdc (floppy disk controller) og agp (Accelerated Graphics Port) drivere.
Kilde: opennet.ru
