In systemd è stata aggiunta la possibilità di sviluppare componenti in linguaggio Rust

Nella base di codice del gestore di sistema systemd è stata introdotta una modifica che consente la creazione di componenti in linguaggio Rust. Rust verrà utilizzato solo per lo sviluppo di nuovi componenti, mentre non si prevede di riscrivere il codice esistente in C nel linguaggio Rust. Il gestore di pacchetti cargo non viene utilizzato durante la compilazione; è attiva solo la sistema di costruzione Meson. Il codice Rust viene utilizzato in modalità «no_std» (senza libreria standard), e sono consentite solo le librerie core, alloc e libc.

I componenti di systemd in Rust vengono collegati dinamicamente alla libreria C libsystemd-shared. I wrapper Rust per libsystemd-shared vengono generati automaticamente durante il processo di compilazione dai file di intestazione utilizzando l'utilità bindgen, e diventano disponibili per i programmi rust sotto forma di pacchetto systemd_shared. Per funzionare è richiesta almeno la versione rustc 1.85 e bindgen 0.71.1, che corrispondono alle versioni di Debian 13.

Un file eseguibile di prova in Rust, compilato con ottimizzazioni LTO, occupa 32 KB, mentre l'equivalente in C occupa 20 KB. Per impostazione predefinita, il supporto per Rust è abilitato solo se nel sistema è presente l'apposito strumento Rust (-Drust=auto). Il primo componente sviluppato in Rust è systemd-keyring-setup, che non è ancora stato accolto nella base di codice principale di systemd. Systemd-keyring-setup è progettato per configurare e gestire i certificati X.509 per i meccanismi del kernel Linux dm-verity, fs-verity e bpf.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS 🔥 Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS - ProHoster