AerynOS, η νέα διανομή που παρουσιάζεται ως υποδομή με όραμα πλατφόρμας

AerynOS

Σε ένα μακροσκελές τεχνικό άρθρο, Ikey Doherty (γνωστός για την ηγεσία σε έργα όπως το Solus και τη συμβολή του στο Clear Linux) σκιαγραφεί τη φιλοσοφία και την αρχιτεκτονική του AerynOS, αυτό το νέο έργο που επιδιώκει να επανεξετάσει τον τρόπο με τον οποίο πρέπει να συμπεριφέρεται ένα λειτουργικό σύστημα στην εποχή της υποδομής ως κώδικα.

Και κάθε άλλο παρά απλώς μια ακόμη διανομή στο οικοσύστημα Linux, Το AerynOS παρουσιάζεται ως μια βαθιά αναδιαμόρφωση του σύγχρονου λειτουργικού συστήματος.

Από τη διανομή στις υποδομές

AerynOS γεννιέται από μια ερώτηση προκλητικός: «Τι θα γινόταν αν το λειτουργικό σύστημα συμπεριφερόταν σαν μια σύγχρονη υποδομή;». Η απάντηση είναι μια πλατφόρμα που κατασκευάζεται από την αρχή, χωρίς να παρακάμπτει τις παλαιότερες συμβάσεις των παραδοσιακών διανομών και αντί να μεταλλάσσει υπάρχοντα συστήματα, το AerynOS ξεκινά από καθαρά θεμέλια, αξιοποιώντας προηγούμενες εμπειρίες και λαμβάνοντας ριζικές αρχιτεκτονικές αποφάσεις για να διασφαλίσει τη συνέπεια, την αναστρεψιμότητα και την απλότητα της δομής.

Ο Άικι Ντόχερτι αναφέρει στο άρθρο του ότι Μία από τις πιο εντυπωσιακές αποφάσεις είναι η υιοθέτηση της εργαλειοθήκης LLVM. αντί για το παραδοσιακό GNU, χρησιμοποιώντας libc++ και compiler-rt από προεπιλογή. Αυτή η επιλογή δεν οφείλεται μόνο σε στυλιστικές προτιμήσεις, αλλά και σε μια στρατηγική. για ανώτερη διάγνωση και μεγαλύτερη φορητότητα. Παρά την αναβάθμιση αυτή, το AerynOS παραμένει αφοσιωμένο στη χρήση της glibc ως βασικής βιβλιοθήκης, επιλέγοντάς την αντί της musl για την ανώτερη απόδοσή της σε πολυνηματικά φορτία και απαιτητικές εφαρμογές.

Επιπλέον, αναφέρεται ότι ένας Μία από τις βασικές έννοιες του AerynOS είναι η «ανυπακοή»: Κανένα πακέτο δεν μπορεί να εγκαταστήσει αρχεία εκτός του /usr. Αυτή η αυστηρή οριοθέτηση διαχωρίζει τον χώρο χρήστη (/etc, /var) από τον χώρο του συστήματος, εξαλείφοντας τις διενέξεις συγχώνευσης και διευκολύνοντας τις καθαρές αναβαθμίσεις. Αυτή η ιδέα, η οποία χρονολογείται από το Clear Linux, επιδιώκει να επιβάλει λογικές προεπιλογές και να αποφύγει την περιττή πολυπλοκότητα που συχνά εισάγουν πιο ευέλικτα συστήματα.

Ατομικές και αναστρέψιμες ενημερώσεις

AerynOS χρησιμοποιεί ένα εντελώς νέο σύστημα διαχείρισης πακέτων, που ονομάζεται Moss, που εκτελεί ατομικές συναλλαγές. Κάθε ενημέρωση δημιουργεί ένα νέο δέντρο /usr χρησιμοποιώντας σκληρούς συνδέσμους από ένα μη διπλότυπο χώρο αποθήκευσης και ανταλλάσσεται με το τρέχον δέντρο ατομικά χρησιμοποιώντας την συνάρτηση renameat2(). Αυτός ο μηχανισμός διασφαλίζει ότι οι ενημερώσεις είτε ολοκληρώνονται πλήρως είτε δεν εφαρμόζονται καθόλου, αποφεύγοντας ενδιάμεσες καταστάσεις.

Η διαχείριση της μπότας σπάει επίσης την παράδοση. Χάρη σε εργαλεία όπως το blsforme και το disks-rs, το AerynOS δημιουργεί δυναμικά τη γραμμή εντολών του πυρήνα διαβάζοντας απευθείας τα superblocks του συστήματος αρχείων, εξαλείφοντας την ανάγκη για root=. Επιπλέον, κάθε πυρήνας συνδέεται με τη συγκεκριμένη συναλλαγή του, διευκολύνοντας την επαναφορά του συστήματος από το μενού εκκίνησης και επιτρέποντας την ανακατασκευή του περιβάλλοντος εκκίνησης από την αρχή σε περίπτωση απώλειας ESP.

Η μορφή .stone: ένας νέος τρόπος συσκευασίας λογισμικού

Ένα άλλο βασικό συστατικό είναι το Μορφή .stone, ένα σύγχρονο δυαδικό πακέτο Σχεδιασμένο με ανεξαρτησία έκδοσης και υψηλή απόδοση. Κάθε αρχείο .stone περιέχει:

  • Αποδιπλότυπο περιεχόμενο αρχείων πακέτου
  • Ένα hash index (XXH128, με σχέδια για μετεγκατάσταση στο Blake3)
  • Ένας χάρτης του συστήματος αρχείων προορισμού
  • Πληκτρολογημένα μεταδεδομένα όπως όνομα, έκδοση, δυνατότητες κ.λπ.

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

Το σύστημα διαχείρισης πακέτων δεν ακολουθεί το παραδοσιακό μοντέλο επιτακτικών αναγκών. Οι προγραμματιστές πιστεύουν ότι οι εντολές άμεσης εγκατάστασης «εισάγουν περισσότερα σφάλματα από όσα λύνουν». Αντίθετα, κάθε συναλλαγή δημιουργεί ένα νέο γράφημα συστήματος, ανοίγοντας το δρόμο για ένα μελλοντικό δηλωτικό μοντέλο παρόμοιο με το Nix ή το Gentoo, όπου περιγράφεται η επιθυμητή κατάσταση του συστήματος αντί να εκτελούνται εντολές αλλαγής.

Είναι το AerynOS αμετάβλητο;

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

Παρά το γεγονός ότι βρίσκεται σε φάση άλφα, το AerynOS έχει ήδη διαθέσιμα ISO, υποστήριξη για GNOME, συμβατότητα με Steam, NVIDIA, Flatpak και πραγματικούς χρήστες που επαινούν τη σταθερότητα και την απόδοσή του. Το σύστημα λειτουργεί ήδη αρκετά καλά ώστε να μπορεί να δοκιμαστεί σε πραγματικές συνθήκες, αν και εξακολουθεί να εξελίσσεται.

πηγή: https://aerynos.com