Προγραμματισμός

Το Redox OS του Rust θα μπορούσε να δείξει στο Linux μερικά νέα κόλπα

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

Τους τελευταίους μήνες μια ομάδα προγραμματιστών έχει απασχοληθεί να κάνει ακριβώς αυτό: χρησιμοποιώντας το Rust για να δημιουργήσει το Redox, ένα πλήρες λειτουργικό σύστημα τύπου Unix που έχει σχεδιαστεί ως ριζική επανεξέταση της προσέγγισης Linux.

Λευκό μητρώο

Η Redox χρησιμοποιεί το Rust για τον κωδικό του επιπέδου του πυρήνα για να παρέχει περισσότερα ζητήματα ασφάλειας μνήμης από ό, τι το C επιτρέπει από προεπιλογή. Αλλά το έργο δεν ξαναγράφει απλώς το Linux σε μια νέα γλώσσα. Η Redox απορρίπτει τόσο πολύ από την έκδοση του Linux της παράδοσης Unix όσο διατηρεί.

Όπως εξηγείται στα έγγραφα wiki και σχεδιασμού του έργου, η Redox χρησιμοποιεί ένα ελάχιστο σύνολο syscalls - ένα σκόπιμα μικρότερο υποσύνολο από αυτό που υποστηρίζει το Linux, ώστε να αποφευχθεί το κλασικό πρόβλημα. Το λειτουργικό σύστημα χρησιμοποιεί επίσης σχεδιασμό μικροπυρήνων για να παραμείνει λεπτός, σε αντίθεση με τον μονολιθικό πυρήνα του Linux.

Πολλές από τις εσωτερικές συμπεριφορές του λειτουργικού συστήματος έχουν επίσης επανεξεταστεί. Το Unix και το Linux χρησιμοποιούν και τα δύο την έννοια κάθε στοιχείου ως αρχείο. Η Redox προχωρά ένα βήμα παραπέρα και αντιμετωπίζει τα πάντα σαν ένα URL, οπότε είναι απλό να εγγραφείτε χειριστές για συμβάντα και παρέχει έναν συνεπή τρόπο εκτέλεσης άλλων ειδών αφαιρέσεων.

//github.com/redox-os/redox

Το σχέδιο, ωστόσο, δεν είναι να αντικαταστήσει το Linux, αλλά να παρέχει μια χρήσιμη εναλλακτική λύση που μπορεί να τρέξει εγκαίρως το λογισμικό Linux ως έχει. Υπάρχουν ήδη μερικές συμβουλές: Υποστηρίζονται πολλές κοινές εντολές Unix (και επομένως Linux) και υπάρχει μια θύρα σε εξέλιξη του συστήματος αρχείων ZFS.

Ένα άλλο ριζικό διάλειμμα από το Linux δεν είναι στο λογισμικό αλλά στην αδειοδότηση: Όλο το έργο έχει άδεια MIT και όχι GPL. Το σκεπτικό είναι ότι η άδεια MIT ενθαρρύνει την κατάρρευση υιοθέτηση πολύ πιο εύκολα από την GPL, "δεδομένου ότι το downstream είναι αυτό που έχει πραγματικά σημασία: η βάση χρηστών, η κοινότητα, η διαθεσιμότητα."

Ο μακρύς δρόμος μπροστά

Παρόλο που μπορείτε να κατεβάσετε και να εκκινήσετε τα ISO του Redox, δεν είναι πιθανό να εγκαταλείψετε το Linux για Redox στην παραγωγή σύντομα.

Πρώτον, η Redox δεν έχει δοκιμαστεί, με πολλές λειτουργίες που λείπουν και πολλές πολλές ελλιπείς. Οι προγραμματιστές της Redox παραδέχονται επίσης ότι δεν θα είναι δυνατό να δημιουργηθεί "πλήρης συμβατότητα Posix 1: 1" (επειδή το λειτουργικό σύστημα παραλείπει πολλές συστοιχίες Unix), οπότε το υπάρχον λογισμικό Linux πιθανότατα θα χρειαστεί ένα επίπεδο υποστήριξης στο Redox για να τρέξει - ένα εμπόδιο την έγκρισή του.

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

Ωστόσο, ένα έργο όπως το Redox είναι πολύτιμο. Εάν η Redox μπορεί να εκπληρώσει την υπόσχεσή της ότι θα είναι πιο ασφαλής από τη σχεδίαση, πολλά από τα σενάρια ενσωματωμένων συσκευών που στοχεύουν αυτήν τη στιγμή το Linux ενδέχεται να εξυπηρετούνται καλύτερα από τη Redox. Ο Mozilla έχει ήδη μιλήσει για το Rust ως γλώσσα για το Internet των συσκευών πραγμάτων, οπότε αυτό θα ήταν μια φυσική επέκταση.

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

$config[zx-auto] not found$config[zx-overlay] not found