Rilascio di FreeBSD 15.1

Dopo sei mesi di sviluppo, è stato rilasciato FreeBSD 15.1. Gli assembly di installazione sono stati preparati per le architetture amd64, aarch64, armv7, powerpc64, powerpc64le e riscv64. Sono disponibili anche assembly per sistemi di virtualizzazione (QCOW2, VHD, VMDK, raw) e ambienti cloud di Amazon EC2, Google Compute Engine e Vagrant. Il rilascio di FreeBSD 15.1 sarà supportato fino ad aprile 2027, e gli aggiornamenti per il ramo 15.x verranno rilasciati fino al 31 dicembre 2029.

Principali modifiche:

  • I driver per dispositivi wireless rtw88 (Realtek 802.11n/ac), rtw89 (Realtek 802.11ax) e iwlwifi (Intel 802.11a/b/g/n/ac/ax/be) sono stati allineati con il kernel Linux 7.0.
  • Nel kernel è stato implementato un framework per la selezione dello scheduler. Nella configurazione del kernel sui sistemi amd64, oltre allo scheduler predefinito SCHED_ULE, è stata attivata la build del classico scheduler SCHED_4BSD. Per selezionare lo scheduler al momento dell'avvio, è stato aggiunto il parametro sysctl kern.sched.
  • È stato effettuato un lavoro per garantire il supporto allo standard C23 nel codice sorgente per la compilazione con i compilatori in modalità C23. Il supporto completo per C23 è previsto nella versione FreeBSD 16. Il nuovo standard introduce le costanti nullptr, il tipo _BitInt(n) e le parole chiave bool, true e false, che potrebbero confliggere con identificatori omonimi definiti nel codice esistente. Il supporto per C23 consentirà di utilizzare nel codice FreeBSD nuove funzionalità del linguaggio, come il file di intestazione stdbit.h, la funzione memalignment(), e i file limits.h e stdint.h aggiornati con la macro _WIDTH e il tipo char8_t.
  • Nel filtro pacchetti ipfw è stata implementata la possibilità di specificare maschere arbitrarie nelle tabelle (lookup table), permettendo di ignorare qualsiasi combinazione di bit nelle chiavi e negli elementi della tabella, ad esempio, è possibile utilizzare maschere non consecutive. IP addresses, come «lookup src-ip4:255.255.253.255». È stato rimosso il codice per la compatibilità con le versioni del filtro pacchetti ipfw fornite prima del rilascio di FreeBSD 8.
  • È stato consentito il routing dei pacchetti IPv6 verso i socket divert, nei quali in precedenza era permesso solo l'uso di IPv4. È stato aggiunto al comando ifconfig il flag ‘stableaddr’ per generare indirizzi IPv6 stabili, che rimangono invariati per ogni sottorete (Stateless Address Autoconfiguration, RFC 7217).
  • La shell predefinita per gli utenti «root» e «freebsd» è stata cambiata da csh a sh.
  • Aggiunto il comando setaudit per gestire le politiche di auditing di sistema.
  • Alla utility find sono state aggiunte le opzioni «-xattr» e «-xattrname» per la ricerca di file considerando gli attributi estesi.
  • Nella utility newfs è stata aggiunta l'opzione «-u» per disabilitare il meccanismo degli aggiornamenti soft e il logging per UFS2.
  • Rimossa di default la utility ipfs, utilizzata per il salvataggio e il ripristino delle tabelle di traduzione indirizzi, e disabilitata la funzionalità necessaria per il suo funzionamento nel kernel (può essere ripristinata nelle impostazioni di build).
  • Nello script bsdinstall è attivata di default l'installazione di pkgbase con i componenti specificati nella variabile COMPONENTS. Il vecchio metodo di installazione basato su distset rimane disponibile se la variabile DISTRIBUTIONS è definita.
  • Alle librerie standard sono state aggiunte le funzioni tdestroy,
    strdupa,
    strndupa,
    posix_spawnattr_getexecfd_np,
    posix_spawnattr_setexecfd_np,
    pthread_tryjoin_np.
    Nelle funzioni memcpy, memmove e memset sui sistemi AArch64 sono state implementate ottimizzazioni basate sulle istruzioni MOPS (Memory Operations).
  • È stata aggiunta la libreria libuvmem con l'implementazione del meccanismo di allocazione della memoria vmem, che opera nello spazio utente e fornisce un'API compatibile con vmem per le applicazioni.
  • Negli immagini per di macchine virtuali e nei sistemi cloud è stato incluso il gestore pacchetti pkg, con supporto implementato per l'aggiornamento atomico del pacchetto con il sistema di base al primo avvio.
  • Nel kernel MINIMAL è stato incluso il driver virtio_scsi, che consente di avviare il sistema in macchine virtuali basato su qemu/kvm.
  • Sono state implementate le chiamate di sistema pdwait e pdfork per il nuovo meccanismo di creazione e terminazione dei processi, che utilizza i descrittori dei processi.
  • Nello strato di compatibilità con Linux è stato aggiunto fcntl F_DUPFD_QUERY, che utilizza kcmp KCMP_FILE per verificare il descrittore di file nei container Linux.
  • È stata inclusa la compilazione del driver iwx per gli adattatori wireless Intel AX210/AX211/AX411, con supporto per Wi-Fi 6E e Wi-Fi 7.
  • I driver sono stati aggiornati. È stato aggiunto il supporto per gli adattatori di rete Intel E835-XXV-4 e Intel E835 Ethernet, per i controller RAID utilizzati in server Fujitsu PRIMERGY e NVMe-ssd utilizzati in Google Compute Engine C4. È stato migliorato il supporto per le schede Raspberry Pi. È stata aggiunta la compatibilità con i contatori di monitoraggio delle prestazioni (hwpmc) forniti con le CPU Intel Alder Lake, Alder Lake-N ed Emerald Rapids.
  • Il driver hid è stato configurato per fornire accesso agli utenti del gruppo game, consentendo di utilizzare i controller di gioco senza elevazione dei privilegi, sfruttando librerie come libsdl.
  • L'utility mt è ora compatibile con i nastro di archiviazione che supportano gli standard LTO-10 e LTO-10P (Linear Tape-Open Generation 10).
  • È stata aggiunta al comando 'zpool prefetch' la supporto per i metadati BRT (Block Reference Table), migliorando le prestazioni del cloning e del rilascio dei blocchi.
  • Nel client NFS è stata aggiunta la supporto per l'esportazione attraverso NFS di file systems che non considerano la distinzione tra maiuscole e minuscole nei nomi di file e directory.
    Con il boot senza disco tramite NFSv4 è stata implementata la supporto per il montaggio di partizioni NFS come filesystem radice e il mapping di nomi o identificatori utente tramite nfsuserd. È stata aggiunta la supporto iniziale per l'estensione a NFSv4.2 con POSIX ACL. un server è stata aggiunta al client NFSv4 la supporto per l'attributo di archiviazione (UF_ARCHIVE), utilizzato nel client NFS di Windows.
  • Nell'interfaccia splash è stata aggiunta la possibilità di impostare uno screensaver in formato PNG, mostrato al termine del funzionamento del sistema.
  • Aggiunto sysctl net.inet.ipf.jail_allowed, che consente di collegare un proprio insieme di impostazioni e regole del filtro pacchetti ipfilter all'ambiente Jail.
  • Aggiunto sysctl allow.vmm_ppt per il passaggio di accesso ai dispositivi PCI in ambienti isolati basati sul hypervisor bhyve.
  • Nel driver GPU basato su virtio è stata implementata la supporto per ambienti virtuali basati su Parallels Desktop.
  • Aggiunta la supporto per i registri FGT (Fine-Grained Trap), il meccanismo Extended Destination ID e le istruzioni MOPS (Memory Operations), che espandono le capacità di virtualizzazione e migliorano le prestazioni sui sistemi ARM64. Aggiunta la supporto per l'estensione ARM64 LASS (Linear Address Space Separation) per rafforzare l'isolamento tra il kernel e lo spazio utente.
  • Nell'implementazione del frame buffer dell'hypervisor bhyve è stata aggiunta la supporto per i socket UNIX, che consentono di passare la console grafica nei Jail non tramite rete.
  • Aggiornate le versioni di 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.
  • Il font console spleen è stato aggiornato alla versione 2.2.0 e ampliato con simboli aggiuntivi (trattino lungo, trattino corto, trattino normale, parentesi angolari, quadrato bianco, croce e doppia croce). Migliorato l'allineamento dei simboli su schermi ad alta densità di pixel. Le tabelle dei caratteri Unicode sono state aggiornate alla versione 17.0.0, che aggiunge 4803 simboli.
  • Il sottosistema blacklist è stato rinominato in blocklist con il processo in background blocklistd. Le vecchie impostazioni degli script rc e delle regole di filtraggio dei pacchetti continuano a funzionare, ma generano un avviso.
  • Gli strumenti OpenPAM sono stati spostati in un nuovo pacchetto FreeBSD-pam, mentre la libreria Zstandard e l'utilità zstd sono state incluse nel pacchetto FreeBSD-zstd.
  • Nei sistemi installati tramite pacchetti freebsd-base, è stata bloccata l'esecuzione degli script di installazione installworld e installkernel per evitare disallineamenti dello stato del sistema con i pacchetti.
  • È stato interrotto il supporto per la creazione di build in formato OCI (Oracle Cloud Infrastructure).
  • Sono state dichiarate obsolete e verranno rimosse nella versione FreeBSD 16 le utility fdisk, bsdlabel, lpr, lpd, lpc, lpq, lprm, lp, pac, lptest e chkprintcap. Si consiglia di utilizzare gpart o bsdinstall per la gestione delle partizioni disco, mentre per l'organizzazione dell'output di stampa si dovrebbe usare il port print/cups o sysutils/LPRng. In FreeBSD 16 si prevede anche l'eliminazione dei sysctl hw.ata.rotating e hw.ata.unmapped_io, oltre ai driver hifn (acceleratori crittografici Hifn 7751/7951/7811/7955/7956), safe (acceleratori crittografici SafeNet SafeXcel 1141/1741), le (AMD Am7900 LANCE e Am79C9xx ILACC/PCnet Ethernet), fdc (controllore floppy disk) e agp (Accelerated Graphics Port).

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster