Ricerca nel sito web

Rilasciato il kernel Linux 6.13, ecco le novità


Il kernel Linux 6.13 introduce la prelazione differita, le scritture atomiche in XFS/Ext4, la virtualizzazione ARM64 migliorata, le API avanzate per i dispositivi di rete e altro ancora.

Linus Torvalds ha annunciato il rilascio ufficiale del nuovo kernel Linux 6.13 con un aggiornamento spensierato: "Quindi non è successo nulla di orribile o inaspettato la scorsa settimana, quindi ho taggato e pubblicato la versione finale 6.13."Ora, lascia che ti guidi attraverso gli aggiornamenti chiave e le funzionalità che porta.

Uno dei miglioramenti più discussi nel kernel 6.13 è l'introduzione della prelazione pigra, un compromesso intelligente tra la modalità volontaria convenzionale e la modalità di prelazione completa.

Mentre la prelazione volontaria scambia una certa reattività con prestazioni migliorate e la prelazione completa garantisce cambi di attività quasi istantanei a un potenziale costo in termini di prestazioni, la prelazione pigra mira a fornire più opportunità di prelazione rispetto alla modalità volontaria senza il sovraccarico della prelazione completa.

Un altro prezioso miglioramento in questa versione è il supporto per le scritture atomiche in XFS, Direct I/O di Ext4 e alcune modalità md RAID. Se supportati da hardware in grado di combinare in modo sicuro più settori in un'unica operazione atomica, questi file system possono aggiornare i dati in modo più efficiente e affidabile.

Il kernel Linux 6.13 mostra anche miglioramenti nelle prestazioni di rete, in particolare tramite la sospensione NAPI, introducendo un metodo che passa automaticamente da uno all'altro, garantendo che i sistemi rimangano efficienti quando il traffico è leggero e mitigando anche il sovraccarico quando la domanda di rete aumenta.

I team di networking apprezzeranno la nuova API flessibile del dispositivo per la configurazione del shaping hardware di trasmissione (TX H/W shaping). Grazie alle funzionalità di introspezione integrate, gli sviluppatori possono ora interrogare l'hardware per le opzioni disponibili e ottimizzare le policy di shaping per ottimizzare il pacing dei pacchetti, l'utilizzo della larghezza di banda o la qualità del servizio per diversi profili di traffico.

Dal punto di vista della sicurezza, le pagine di guardia sono sempre state un modo pulito per catturare accessi indesiderati o accidentali alla memoria attivando un segnale fatale ogni volta che vengono toccati. Tuttavia, la loro implementazione richiedeva in genere un elevato sovraccarico di allocazione della memoria.

Questa sfida è stata risolta nel kernel 6.13 con pagine di protezione leggere, introdotte tramite il nuovo flag MADV_GUARD_INSTALL per la chiamata di sistema madvise().

io_uring, l'interfaccia I/O asincrona che ha suscitato entusiasmo sin dal suo debutto, riceve diversi perfezionamenti in questo ciclo, tra cui:

  • Ridimensionamento dell'anello: le app possono ora iniziare con un piccolo buffer ad anello ed espanderlo senza problemi se la domanda cresce.
  • Clonazione parziale del buffer: invece di clonare l'intera tabella del buffer, gli sviluppatori possono scegliere di duplicare solo la sezione necessaria.
  • Polling I/O ibrido: metodo per ridurre lo spreco della CPU introducendo un breve periodo di sospensione prima del polling attivo.

Sul fronte ARM, Linux 6.13 porta due aggiunte straordinarie:

  1. Arm Confidential Compute Architecture (CCA): i sistemi basati su ARM possono ora eseguire Linux all'interno di una VM protetta sotto CCA, rafforzando l'isolamento guest e difendendosi da una gamma più ampia di attacchi.
  2. Shadow Stack in spazio utente: spesso indicata come Guarded Control Stack (GCS) nella documentazione di ARM, questa funzionalità protegge gli indirizzi restituiti in uno stack protetto dall'hardware. È progettato per contrastare gli attacchi ROP (Return-Oriented Programming) e per semplificare la profilatura e il debug fornendo il monitoraggio automatico dello stack di chiamate.

Ultimo ma non meno importante, le operazioni interne sui file del kernel ora beneficiano di un nuovo meccanismo di conteggio referenziato. I benchmark suggeriscono un aumento delle prestazioni del 3-5% nei sistemi che gestiscono un numero elevato di thread, un miglioramento gradito negli ambienti che aprono, chiudono e modificano costantemente i file.

Naturalmente, come per ogni nuova versione del kernel, ci sono innumerevoli altre modifiche sotto il cofano, tra cui:

  • Aggiornamenti alla gestione della memoria per una gestione più efficiente delle pagine.
  • Miglioramenti dei driver per audio, archiviazione, rete e altro ancora.
  • Perfezionamenti nei componenti di virtualizzazione, dalle espansioni delle architetture AMD e Intel ai miglioramenti KVM su ARM64.
  • Nuove richieste pull e ulteriori modifiche al codice che migliorano la stabilità e la versatilità complessive del kernel.

Se vuoi esplorarli in dettaglio, considera di controllare i rapporti della finestra di fusione LWN (Parte 1 e Parte 2) o guarda tutte le fusioni nel registro git commit di Torvald. Per coloro che desiderano compilare il kernel Linux 6.13 da soli, è ora disponibile per il download su kernel.org.