Greg Kroah-Hartman hà discuttu cumu Rust pò aiutà à cumbatte i bug di u kernel. Linux

Greg Kroah-Hartman, rispunsevule di mantene e branche stabili è di staging di u kernel Linux è mantenitore di 16 sottosistemi di kernel, hà fattu una cunferenza à a cunferenza Rust Week 2026, in a quale hà descrittu cumu u linguaghju Rust pò aiutà à prevene e vulnerabilità di u kernel derivanti da errori tipici fatti da i sviluppatori C quandu travaglianu cù a memoria, i blocchi, a gestione di l'errori è a gestione di dati micca affidabili. U principale vantaghju di Rust hè citatu cum'è a capacità di rilevà tali errori in tempu di custruzzione, invece di richiede una revisione umana di u codice. Tuttavia, Rust ùn hè micca vistu cum'è una panacea capace di eliminà tutti i prublemi, è nimu pensa di riscrive u kernel in Rust. L'aspettativa hè chì Rust serà gradualmente aduttatu attraversu u so usu in novi driver è sottosistemi.

Esempi di bug di u kernel chì puderianu esse stati evitati aduprendu Rust includenu un bug in u sottosistema Bluetooth chì hè passatu inosservatu per 15 anni è un prublema in l'ipervisore Xen. In u primu casu, u sviluppatore hà dereferenziatu un puntatore senza verificà, è in u secondu, hà scurdatu di liberà un bloccu in u codice di gestione di l'errore.
Sicondu Greg, a maiò parte di i bug di u kernel sò causati da picculi prublemi, chì s'accumulanu cù u tempu è emergenu cum'è vulnerabilità. In Rust, parechji di sti prublemi sò impediti da u compilatore. Per esempiu, l'astrazioni di serratura di Rust in u kernel permettenu l'accessu à i puntatori di struttura interna solu dopu avè acquistatu a serratura adatta, chì hè liberata automaticamente. Senza acquistà a serratura, l'accessu à i puntatori di struttura in Rust hè impussibile.

Greg crede chì e funziunalità di Rust impediscenu u 60% di i bug truvati in u kernel, è i cuntrolli di u compilatore risparmieranu tempu à i mantenitori à discute cù l'autori a currettezza di a gestione di l'errori è l'adeguatezza di u bloccu. Inoltre, l'introduzione di u supportu Rust hà digià avutu un effettu beneficu nantu à u codice C in u kernel, mettendu in ordine u codice C è l'interfacce, è pigliendu in prestitu alcune tecniche di sviluppu (per esempiu, implementendu blocchi cù un scopu limitatu).

Grazie à un sistema di tipi chì assicura l'aderenza à e regule definite è l'usu di sistemi d'integrazione cuntinua chì verificanu u codice à u mumentu di a custruzzione, quandu rivedenu i cambiamenti à Rust, i mantenitori ponu fucalizza si nantu à a verificazione di a logica sottostante piuttostu chè nantu à u monitoraghju di e manipulazioni di e risorse. L'usu di Rust permette ancu una cunsiderazione più attenta di i dati chì venenu da hardware o sistemi esterni. Questu hè ottenutu per mezu di una distinzione esplicita trà dati affidabili è micca affidabili à u livellu di u sistema di tipi: u sviluppatore hà bisognu solu di fà analisi quandu passa da un statu micca affidabile à un statu affidabile.

Ultimamente, a squadra di sicurezza di u kernel hà publicatu circa 13 rapporti di vulnerabilità per ghjornu, chì, paragunatu à a tendenza precedente di scuperta di vulnerabilità, pare guasi pazzu (per esempiu, 277 rapporti di vulnerabilità di u kernel sò stati publicati eri). Greg crede chì l'usu di Rust hè unu di i veri modi per riduce u numeru di bug di u kernel causati da sviste tradiziunali in a gestione di l'errori è a gestione di e risorse. U supportu di Rust in u kernel hè digià andatu oltre a fase sperimentale è hè statu aduttatu cum'è una funzione standard à a fine di l'annu scorsu.

Play video


Source: opennet.ru
Cumprate un hosting affidabile per i siti cù prutezzione DDoS, servitori VPS VDS 🔥 Cumprate un hosting di siti web affidabile cù prutezzione DDoS, servitori VPS VDS | ProHoster