Dopo due mesi di sviluppo, Linus Torvalds ha rilasciato la versione 5.5 del kernel Linux . Tra le novità più significative di questa versione figurano la possibilità di assegnare nomi alternativi alle interfacce di rete, l'integrazione delle funzioni crittografiche della libreria Zinc, la possibilità di duplicare più di due dischi in RAID 1 con Btrfs, un meccanismo per monitorare lo stato delle patch in tempo reale, il framework di test delle unità kunit, il miglioramento delle prestazioni dello stack wireless mac80211, la possibilità di accedere alla partizione root tramite il protocollo SMB e molto altro ancora.
La nuova versione ha adottato 15505 patch di sviluppo, con una dimensione di 44 MB (le modifiche hanno interessato 11781 file, aggiungendo 609208 righe di codice e rimuovendone 292520). Circa il 44% di tutte le modifiche nella versione 5.5 riguarda i driver di dispositivo, circa il 18% gli aggiornamenti al codice specifico dell'architettura hardware, il 12% lo stack di rete, il 4% i file system e il 3% i sottosistemi interni del kernel.
Principali novità del Linux Kernel 5.5
In questa nuova versione del kernel Linux 5.5 è stato aggiunto il supporto per i checksum xxhash64, blake2b e sha256 per il file system Btrfs .
Nell'implementazione RAID1 , è possibile duplicare i dati su tre (RAID1c3) o quattro (RAID1c4) dispositivi (in precedenza la duplicazione era limitata a due dispositivi), consentendo di salvare i dati perdendo contemporaneamente 2 o 3 dispositivi.
Mentre Ext4 offre la possibilità di utilizzare blocchi più piccoli per la crittografia (in precedenza, la crittografia veniva eseguita solo con blocchi la cui dimensione corrispondeva alla dimensione delle pagine di memoria (4096)).
F2FS implementa una modalità di blocco dei file con allineamento lungo il bordo di 2 MB per il posizionamento in un segmento completamente corretto, garantendo l'assenza di ulteriore ridistribuzione di questo file da parte del garbage collector.
Un'altra importante novità è il supporto aggiunto per il monitoraggio dello stato dei sensori di temperatura dei dispositivi NVMe tramite l'API hwmon (compatibile con libsensors e il comando "sensors"), che non richiede privilegi elevati per l'accesso (in precedenza, le informazioni sulla temperatura venivano visualizzate nello "smart log", accessibile solo all'utente root).
Inoltre, nell'ambito del progetto principale di integrazione VPN WireGuard , molte funzionalità della libreria crittografica di Zinc sono state portate nell'API Crypto standard, incluse implementazioni veloci degli algoritmi ChaCha20 e Poly1305.
L' hypervisor KVM per architettura x86 offre la possibilità di elaborare tabelle annidate a cinque livelli di pagine di memoria e aggiunge il supporto per le istruzioni XSAVES per i processori AMD. Per i processori ARM64, è stata aggiunta la possibilità di trasmettere informazioni di temporizzazione.
È stato inoltre aggiunto al sottosistema crittografico il supporto per la funzione hash blake2b , che offre prestazioni di calcolo hash molto elevate pur mantenendo l'affidabilità al livello di SHA-3, nonché una versione abbreviata di Blake2s.
Un altro cambiamento significativo in questa nuova versione del kernel Linux 5.5 è il nuovo meccanismo per l'assegnazione di nomi alternativi alle interfacce di rete, che consente l'utilizzo simultaneo di più nomi per una singola interfaccia (incluso l'utilizzo di più modelli udev).
La dimensione del nome può essere fino a 128 caratteri (in precedenza il nome dell'interfaccia di rete era limitato a 16 caratteri).
Per aggiungere un nome aggiuntivo, utilizzare il comando " ip link prop add " (ad esempio, " ip link prop add enx00e04c361e4c altname someothername "). L'implementazione si basa sull'aggiunta di proprietà aggiuntive all'interfaccia e può essere estesa in futuro con altri parametri, non limitati ai nomi alternativi.
Infine, se desiderate maggiori informazioni sull'elenco completo delle modifiche incluse in questa nuova versione del kernel Linux, potete consultarlo al seguente link.
Per quanto riguarda la disponibilità della nuova versione, è possibile scaricare il codice per compilare il Kernel dal suo sito ufficiale oppure attendere che i pacchetti compilati vengano inclusi nei repository della propria distribuzione.