Rust aggiornamento: adozione industriale e il percorso verso il kernel

Rust è il linguaggio più amato su Stack Overflow per il quinto anno consecutivo. Microsoft, Amazon e il progetto Rust-for-Linux segnano l'adozione industriale e il percorso verso il kernel.

Open Source Open SourceRustSystems ProgrammingLinuxSicurezza

Cinque anni di crescita costante

Nel 2020 Rust viene votato “most loved language” nel sondaggio annuale di Stack Overflow per il quinto anno consecutivo. Il dato non misura la diffusione assoluta — Rust resta un linguaggio di nicchia rispetto a Python o JavaScript — ma indica che chi lo usa non vuole tornare indietro. La soddisfazione riflette le garanzie del linguaggio: sicurezza della memoria a compile time, assenza di data race, prestazioni native, tutto senza garbage collector.

Dalla versione 1.0 rilasciata nel 2015, l’ecosistema si è consolidato. Cargo, il gestore di pacchetti e build system, è diventato il punto di riferimento per la gestione delle dipendenze. Il registro crates.io supera le quarantamila librerie. L’async/await stabile, introdotto nella versione 1.39 del novembre 2019, ha aperto Rust alla programmazione asincrona con un’ergonomia paragonabile a quella di linguaggi di più alto livello.

Microsoft e la sicurezza della memoria

Microsoft annuncia pubblicamente che circa il 70% delle vulnerabilità di sicurezza nei propri prodotti è causato da errori di gestione della memoria in codice C e C++. La statistica, coerente con i dati di Google per Chromium e Android, rende esplicito un problema che l’industria conosce da decenni ma che non ha ancora risolto su scala.

Microsoft inizia a sperimentare Rust per componenti di Windows e strumenti di sistema. Il progetto Rust/WinRT esplora i binding verso le API Windows. Non si tratta di riscrivere Windows in Rust, ma di valutare il linguaggio per i nuovi componenti dove la sicurezza della memoria è critica.

Amazon e Firecracker

Amazon Web Services utilizza Rust per Firecracker, il monitor di macchine virtuali leggero che alimenta AWS Lambda e Fargate. Firecracker deve essere veloce, sicuro e con una superficie di attacco minimale — requisiti che si allineano direttamente con le garanzie di Rust. La scelta di AWS valida il linguaggio per software di infrastruttura ad alta responsabilità.

Il percorso verso il kernel Linux

Nel 2020 la proposta di introdurre Rust come secondo linguaggio nel kernel Linux prende forma concreta. Sviluppatori come Nick Desaulniers presentano patch sperimentali che esplorano come integrare il modello di ownership di Rust con le convenzioni del kernel scritto in C. I principali ostacoli sono l’interoperabilità con il codice C esistente e la gestione dell’allocatore kernel.

La proposta non è unanimemente accolta, ma il supporto di sviluppatori influenti e l’evidenza dei benefici in termini di sicurezza della memoria mantengono il dibattito attivo.

Un linguaggio che trova il proprio spazio

Rust non sostituisce C o C++ nei progetti esistenti. Il suo spazio è nei nuovi componenti dove la sicurezza della memoria è un requisito, non un optional: infrastruttura cloud, strumenti di sistema, driver, firmware. L’adozione da parte di Microsoft, Amazon e la discussione nel kernel Linux segnano il passaggio da linguaggio promettente a strumento industriale.

Link: rust-lang.org

Vuoi supporto? Sei sotto attacco? Stato dei servizi
Vuoi supporto? Sei sotto attacco? Stato dei servizi