U systemd je dodana mogućnost razvoja komponenti na jeziku Rust

U kodnoj bazi sistemskog menadžera systemd uvedena je promena koja dodaje mogućnost kreiranja komponenti na programskom jeziku Rust. Rust će se koristiti isključivo za razvoj novih komponenti, dok se postojeći kod na jeziku C ne planira prepisivati na Rust. Paketni menadžer cargo se ne koristi tokom procesa izgradnje, već ostaje aktivan samo sistem za izgradnju Meson. Rust-kod se koristi u režimu „no_std“ (bez standardne biblioteke), dok je korišćenje dozvoljeno samo za biblioteke core, alloc i libc.

Komponente systemd napisane u Rust-u dinamički se povezuju sa C-bibliotekom libsystemd-shared. Rust obavijanja iznad libsystemd-shared automatski se generiraju tokom izgradnje iz zaglavlja uz pomoć alata bindgen, i postaju dostupni za rust programe u obliku paketa systemd_shared. Za rad su potrebne minimalne verzije rustc 1.85 i bindgen 0.71.1, koje odgovaraju verzijama iz Debian 13.

Testni izvršni fajl u Rust-u prilikom izgradnje sa LTO optimizacijama zauzima 32 KB, dok analogni fajl na C-u zauzima 20 KB. Podrazumevano, podrška za Rust aktivira se samo u prisustvu odgovarajućeg Rust alata u sistemu (-Drust=auto). Kao prva komponenta napisana u Rust-u, razvija se systemd-keyring-setup, koja još uvek nije prihvaćena u glavnu kodnu bazu systemd. Systemd-keyring-setup služi za konfiguraciju i upravljanje X.509 sertifikatima za mehanizme jezgra Linux dm-verity, fs-verity i bpf.

Izvor: opennet.ru

Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere 🔥 Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere | ProHoster