Το Systemd υποστηρίζει πλέον την ανάπτυξη στοιχείων στο Rust.

Μια αλλαγή έχει υιοθετηθεί στη βάση κώδικα του διαχειριστή συστήματος systemd, προσθέτοντας τη δυνατότητα δημιουργίας στοιχείων στο Rust. Το Rust προορίζεται να χρησιμοποιείται μόνο για την ανάπτυξη νέων στοιχείων και δεν υπάρχουν σχέδια για την επανεγγραφή υπάρχοντος κώδικα C στο Rust. Ο διαχειριστής πακέτων cargo δεν χρησιμοποιείται πλέον στη διαδικασία δημιουργίας και παραμένει μόνο το σύστημα δημιουργίας Meson. Ο κώδικας Rust χρησιμοποιείται σε λειτουργία "no_std" (χωρίς την τυπική βιβλιοθήκη) και επιτρέπονται μόνο οι βιβλιοθήκες core, alloc και libc.

Τα στοιχεία systemd Rust συνδέονται δυναμικά με τη βιβλιοθήκη C libsystemd-shared. Οι συνδέσεις Rust για το libsystemd-shared δημιουργούνται αυτόματα κατά τη στιγμή της δημιουργίας από αρχεία κεφαλίδας χρησιμοποιώντας το βοηθητικό πρόγραμμα bindgen και διατίθενται στα προγράμματα Rust με τη μορφή του πακέτου systemd_shared. Αυτό απαιτεί τουλάχιστον τις εκδόσεις rustc 1.85 και bindgen 0.71.1, που αντιστοιχούν στις εκδόσεις στο Debian 13.

Το δοκιμαστικό εκτελέσιμο αρχείο Rust, όταν δημιουργείται με βελτιστοποιήσεις LTO, καταλαμβάνει 32 KB, ενώ το αντίστοιχο σε C καταλαμβάνει 20 KB. Από προεπιλογή, η υποστήριξη Rust είναι ενεργοποιημένη μόνο εάν η αντίστοιχη αλυσίδα εργαλείων Rust υπάρχει στο σύστημα (-Drust=auto). Το πρώτο στοιχείο που γράφτηκε σε Rust βρίσκεται υπό ανάπτυξη, το systemd-keyring-setup, το οποίο δεν έχει ακόμη υιοθετηθεί στην κύρια βάση κώδικα του systemd. Το Systemd-keyring-setup έχει σχεδιαστεί για τη διαμόρφωση και τη διαχείριση πιστοποιητικών X.509 για μηχανισμούς πυρήνα. Linux dm-verity, fs-verity και bpf.

Πηγή: opennet.ru

Αγοράστε αξιόπιστη φιλοξενία για ιστότοπους με προστασία DDoS, διακομιστές VPS VDS 🔥 Αγοράστε αξιόπιστη φιλοξενία ιστοσελίδων με προστασία DDoS, διακομιστές VPS VDS | ProHoster