Δημοσιεύτηκε η πέμπτη έκδοση των ενημερώσεων κώδικα για υποστήριξη προγραμμάτων οδήγησης Rust σε Linux

Φαίνεται ότι ανάπτυξη μπαλωμάτων για υποστήριξη προγραμμάτων οδήγησης Rust σε Linux Έχει ανεβάσει καλό ρυθμό. Λοιπόν, μόλις πριν από ένα μήνα κυκλοφόρησε η νέα πρόταση, αφού από την τρίτη έκδοση μια νέα πρόταση παραδίδεται κάθε μήνα και τώρα κυκλοφόρησε η νέα πρόταση, αυτή είναι η έκτη έκδοση.

Ο Miguel Ojeda πρότεινε τη νέα κυκλοφορία των στοιχείων ανάπτυξης προγραμμάτων οδήγησης συσκευών Rust για προγραμματιστές πυρήνα Linux που πρέπει να ληφθούν υπόψη. Αυτή είναι η έκτη έκδοση θεωρείται ακόμα πειραματικό αλλά περιλαμβάνεται ήδη στον κλάδο του linux-next και είναι αρκετά ώριμο για να αρχίσει να εργάζεται για τη δημιουργία επιπέδων αφαίρεσης πάνω από τα υποσυστήματα του πυρήνα, καθώς και τη σύνταξη προγραμμάτων οδήγησης και λειτουργικών μονάδων.

Για όσους δεν γνωρίζουν ακόμα αυτή την εξέλιξη, θα πρέπει να το ξέρετε χρηματοδοτείται από την Google και το ISRG (Internet Security Research Group), που είναι ο ιδρυτής του έργου Let's Encrypt και προωθεί το HTTPS και την ανάπτυξη τεχνολογιών για την αύξηση της ασφάλειας στο Διαδίκτυο.

Θα πρέπει να το θυμόμαστε αυτό Οι προτεινόμενες αλλαγές καθιστούν δυνατή τη χρήση της Rust ως δεύτερης γλώσσας για την ανάπτυξη προγραμμάτων οδήγησης και λειτουργικών μονάδων πυρήνα. Η υποστήριξη Rust παρουσιάζεται ως μια επιλογή που δεν είναι ενεργοποιημένη από προεπιλογή και δεν έχει ως αποτέλεσμα το Rust να συμπεριλαμβάνεται στις απαιτούμενες εξαρτήσεις κατασκευής για τον πυρήνα.

Η χρήση του Rust για την ανάπτυξη προγραμμάτων οδήγησης θα σας επιτρέψει να δημιουργήσετε καλύτερα και ασφαλέστερα προγράμματα οδήγησης με ελάχιστη προσπάθεια, χωρίς προβλήματα όπως η πρόσβαση σε μια περιοχή μνήμης μετά την απελευθέρωσή της, η κατάργηση αναφοράς μηδενικών δεικτών και η υπερχείλιση buffer.

Η ασφάλεια της μνήμης παρέχεται στο Rust καιn χρόνο μεταγλώττισης ελέγχοντας τις αναφορές, παρακολουθώντας την ιδιοκτησία αντικειμένου και τη διάρκεια ζωής του αντικειμένου (πεδίο), καθώς και αξιολογώντας την πρόσβαση στη μνήμη για ορθότητα κατά την εκτέλεση του κώδικα. Το Rust παρέχει επίσης προστασία υπερχείλισης ακεραίων, απαιτεί την προετοιμασία των μεταβλητών πριν από τη χρήση, καλύτερο χειρισμό σφαλμάτων στην τυπική βιβλιοθήκη, επιβάλλει την έννοια των αμετάβλητων αναφορών και μεταβλητών από προεπιλογή και προσφέρει ισχυρή στατική πληκτρολόγηση για την ελαχιστοποίηση των λογικών σφαλμάτων.

Στη νέα έκδοση των patches συνεχίστηκε η αφαίρεση των σχολίων που έγιναν κατά τη συζήτηση του πρώτου, δεύτερος, τρίτο, τέταρτο y πέμπτο εκδόσεις των patches (των οποίων σας αφήνω τους αντίστοιχους συνδέσμους τους).

Βασικές καινοτομίες στην έκτη πρόταση

Με την άφιξη αυτής της νέας πρότασης η εργαλειοθήκη έχει ενημερωθεί πριν την κυκλοφορία του Rust 1.59.0, μαζί με το οποίο μια παραλλαγή της βιβλιοθήκης alloc Συγχρονίζεται επίσης με τη νέα έκδοση του Rust, εξαλείφοντας την πιθανή δημιουργία κατάστασης "πανικού" όταν συμβαίνουν σφάλματα, όπως η έλλειψη μνήμης.

Μια άλλη από τις αλλαγές που έγιναν είναι ότι τώρα, αντί να παρέχετε αρχεία προδιαγραφών πλατφόρμας προορισμούς που δημιουργήθηκαν στο παρελθόν, δημιουργούνται δυναμικά με βάση τη διαμόρφωση του πυρήνα.

Επιπλέον, επισημαίνεται επίσης ότι η παράμετρος πυρήνα HAVE_RUST έχει προστεθεί για να ενεργοποιηθεί για αρχιτεκτονικές συμβατές με Rust και ότι έχουν προταθεί αφαιρέσεις για χρήση στον κώδικα Rust μιας γεννήτριας ψευδοτυχαίων αριθμών υλικού.

Από την άλλη πλευρά, αναφέρεται ότι η δυνατότητα χρήσης ενθέτων συναρμολογητή έχει σταθεροποιηθεί ("feature(global_asm)") και πρόσθετη υποστήριξη για τη δημιουργία προγραμμάτων κεντρικού υπολογιστή στο Rust που χρησιμοποιούνται στη διαδικασία δημιουργίας πυρήνα.

Από τις άλλες αλλαγές που ξεχωρίζουν από αυτή τη νέα πρόταση:

  • Επιτρέπεται η χρήση κωδικών σφάλματος χωρίς το πρόθεμα "Error::" (για παράδειγμα, "return Err(EINVAL)") για τον κατά προσέγγιση χειρισμό κωδικών σφάλματος στο C.
  • Προστέθηκε ο τύπος "CString" για εγγενείς συμβολοσειρές C. Μικτός τύπος μορφοποιητή και buffer.
  • Προστέθηκαν τα χαρακτηριστικά Bool και LockInfo.
  • Απλοποιημένη εφαρμογή spin-locks.

Τελικά αν ενδιαφέρεστε να μάθετε περισσότερα γι 'αυτό σχετικά με αυτή τη νέα πρόταση, μπορείτε να συμβουλευτείτε τις λεπτομέρειες Στον ακόλουθο σύνδεσμο.


Αφήστε το σχόλιό σας

Η διεύθυνση email σας δεν θα δημοσιευθεί. Τα υποχρεωτικά πεδία σημειώνονται με *

*

*

  1. Υπεύθυνος για τα δεδομένα: AB Internet Networks 2008 SL
  2. Σκοπός των δεδομένων: Έλεγχος SPAM, διαχείριση σχολίων.
  3. Νομιμοποίηση: Η συγκατάθεσή σας
  4. Κοινοποίηση των δεδομένων: Τα δεδομένα δεν θα κοινοποιούνται σε τρίτους, εκτός από νομική υποχρέωση.
  5. Αποθήκευση δεδομένων: Βάση δεδομένων που φιλοξενείται από τα δίκτυα Occentus (ΕΕ)
  6. Δικαιώματα: Ανά πάσα στιγμή μπορείτε να περιορίσετε, να ανακτήσετε και να διαγράψετε τις πληροφορίες σας.