Dopo due intensi mesi di sviluppo e oltre diciassettemila bug risolti, Linus Torvalds ha rilasciato ufficialmente il kernel Linux 7.2. La nuova versione non solo elimina migliaia di righe di codice obsoleto, ma introduce anche ottimizzazioni delle prestazioni, migliora la gestione della memoria e presenta nuove tecnologie di trasmissione diretta tra dispositivi.
Il fulcro del meccanismo iomap è l' eliminazione delle chiamate ridondanti, che ha permesso di aumentare del cinque percento le operazioni di input/output al secondo (IOPS) quando si utilizzano sistemi come ext4 e xfs sotto carichi intensivi su unità NVMe.
Btrfs ora supporta per impostazione predefinita i folio di grandi dimensioni per massimizzare l'input e l'output sequenziali, mentre Ext4 ha riprogettato il suo meccanismo di commit rapido per eliminare i colli di bottiglia e raddoppiare la velocità di calcolo dell'hash nelle directory complesse.
Inoltre, viene introdotto USB4STREAM , un meccanismo che consente il trasferimento diretto dei dati tra computer collegati tramite porte USB4 . Esporre un dispositivo virtuale sul sistema permette agli utenti di leggere e scrivere informazioni tra computer utilizzando comandi standard, eliminando completamente la necessità di configurare complessi bridge o socket di rete.
Inoltre, il sottosistema di swap ha drasticamente ridotto il suo ingombro di memoria unificando la memoria anonima e quella condivisa , risparmiando fino a mezzo gigabyte di RAM per ogni terabyte di swap montato. A livello di elaborazione, il meccanismo SCHED_EXT gestito da eBPF consente ora la creazione di scheduler annidati , dando a ciascun gruppo di controllo la possibilità di gestire i propri task in modo isolato.
Lo scheduler del kernel ora supporta il bilanciamento del carico basato sulla cache , raggruppando i thread intelligenti per condividere la stessa cache di alto livello e migliorando significativamente l'efficienza dell'accesso ai dati. Questo è ulteriormente migliorato dal meccanismo SCHED_EXT, che ora consente la creazione di sottoscheduler annidati , dando a ciascun gruppo di controllo (cgroup) la possibilità di gestire le proprie regole di esecuzione.
Inoltre, è opportuno notare che inizialmente era stato introdotto un innovativo Fair GPU Scheduler , che tuttavia è stato disabilitato all'ultimo minuto a causa di regressioni che causavano un crollo delle prestazioni durante l'esecuzione dei giochi tramite il livello di compatibilità Proton, costringendo a un temporaneo ritorno al tradizionale modello FIFO.
Nel frattempo, il kernel prosegue la necessaria opera di pulizia, rimuovendo definitivamente il supporto per i vecchi processori i486 privi di unità a virgola mobile, e interrompendo anche il collaudato protocollo di rete AppleTalk dopo decenni di servizio.
La sicurezza e la virtualizzazione stanno progredendo grazie alla chiusura di vettori di attacco storici. L' hypervisor KVM ora sfrutta le estensioni hardware Intel MBEC e AMD GMET , consentendo la gestione indipendente dei diritti di esecuzione tra il kernel e lo spazio utente nelle macchine virtuali, riducendo così i costosi trasferimenti di controllo all'hypervisor.
Nel codice sorgente, la funzione non sicura `strncpy` è stata eliminata, un'operazione che ha richiesto anni e centinaia di patch per sostituirla con alternative sicure contro gli overflow. Inoltre, AF_ALG è stato ripulito dai suoi acceleratori hardware, dando priorità alle implementazioni software nello spazio utente, e il modulo Landlock ha esteso la sua protezione per includere un controllo rigoroso sui socket di rete UDP.
Questa versione sarà ricordata anche per la pulizia del codice obsoleto e l'adozione di nuovi standard. Il supporto per i processori i486 è stato abbandonato , una sorte toccata anche all'iconico protocollo AppleTalk, alle interfacce ARCnet e alle vecchie connessioni di rete ATM.
Al contrario, la modernità risplende nel controller PPPoE, che, adottando i meccanismi di offloading GRO e GSO, è riuscito a quintuplicare le prestazioni nel riassemblaggio dei pacchetti.
Infine, il supporto hardware viene completato con l'arrivo della tecnologia HDMI 2.1 FRL nel driver open source AMDGPU per le trasmissioni 8K, mentre l'ecosistema Rust-for-Linux continua a maturare costantemente, aggiungendo il supporto per l'architettura s390 e migliorando l'integrazione del driver Nova per gestire le moderne GPU NVIDIA basate sull'architettura Turing e successive.
Infine, se siete interessati ad approfondire l'argomento, potete trovare maggiori dettagli al seguente link.