Ο συγγραφέας του κελύφους Sway και της γλώσσας Hare αναπτύσσει έναν νέο μικροπυρήνα Helios και OC Ares

Ο Drew DeVault παρουσίασε το νέο του έργο - τον μικροπυρήνα Helios. Στην τρέχουσα μορφή του, το έργο βρίσκεται σε πρώιμο στάδιο ανάπτυξης και μέχρι στιγμής υποστηρίζει μόνο τη φόρτωση επίδειξης σε συστήματα με αρχιτεκτονική x86_64. Και στο μέλλον σχεδιάζουν να εφαρμόσουν υποστήριξη για τις αρχιτεκτονικές iscv64 και aarch64. Ο κώδικας του έργου είναι γραμμένος στη γλώσσα προγραμματισμού συστήματος Hare, η οποία είναι κοντά στη C, με ένθετα συναρμολόγησης και διανέμεται με την άδεια GPLv3. Για να εξοικειωθείτε με την κατάσταση ανάπτυξης, έχει ετοιμαστεί μια δοκιμαστική εικόνα iso (1 MB).

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

Το Helios χρησιμοποιεί ένα μοντέλο ελέγχου πρόσβασης που βασίζεται σε «δυνατότητες». Ο πυρήνας παρέχει πρωταρχικά για την κατανομή σελίδων μνήμης, την αντιστοίχιση της φυσικής μνήμης στο χώρο διευθύνσεων, τη διαχείριση εργασιών και τον χειρισμό κλήσεων σε θύρες συσκευών υλικού. Εκτός από τις υπηρεσίες πυρήνα, όπως η διαχείριση εικονικής μνήμης, το έργο έχει επίσης προετοιμάσει προγράμματα οδήγησης για την εκτέλεση της κονσόλας μέσω σειριακής θύρας και του BIOS VGA API. Η επόμενη φάση ανάπτυξης του πυρήνα θα περιλαμβάνει προληπτικές πολλαπλές εργασίες, IPC, PCI, χειρισμό εξαιρέσεων, ανάλυση πίνακα ACPI και χειριστές διακοπής χώρου χρήστη. Μακροπρόθεσμα, σχεδιάζεται να εφαρμοστεί υποστήριξη για SMP, IOMMU και VT-x.

Όσον αφορά τον χώρο χρήστη, τα σχέδια περιλαμβάνουν την ανάπτυξη υπηρεσιών χαμηλού επιπέδου και τον διαχειριστή συστήματος Mercury, ένα επίπεδο συμβατότητας POSIX (Luna), μια συλλογή προγραμμάτων οδήγησης Venus, ένα περιβάλλον για προγραμματιστές της Gaia και ένα πλαίσιο για τη δοκιμή του πυρήνα του Vulcan. Η ανάπτυξη πραγματοποιείται με γνώμονα τη χρήση πάνω από πραγματικό υλικό - στο αρχικό στάδιο σχεδιάζεται να δημιουργηθούν προγράμματα οδήγησης ThinkPad, συμπεριλαμβανομένων προγραμμάτων οδήγησης για Intel HD GPU, HD Audio και Intel Gigabit Ethernet. Μετά από αυτό, αναμένεται να εμφανιστούν προγράμματα οδήγησης για κάρτες AMD GPU και Raspberry Pi.

Ο απώτερος στόχος του έργου είναι η δημιουργία ενός πλήρους λειτουργικού συστήματος Ares με δικό του διαχειριστή πακέτων και γραφική διεπαφή. Ο λόγος για τη δημιουργία του έργου είναι η επιθυμία για πειραματισμό και εργασία ως ψυχαγωγία (η αρχή «μόνο για διασκέδαση»). Ο Drew DeVault του αρέσει να θέτει φιλόδοξους στόχους για τον εαυτό του και μετά, παρά τον γενικό σκεπτικισμό, τους υλοποιεί. Αυτό συνέβη με το περιβάλλον χρήστη Sway, το πρόγραμμα-πελάτη ηλεκτρονικού ταχυδρομείου Aerc, την πλατφόρμα συνεργατικής ανάπτυξης SourceHut και τη γλώσσα προγραμματισμού Hare. Αλλά ακόμα κι αν το νέο έργο δεν λάβει τη σωστή διανομή, θα χρησιμεύσει ως αφετηρία για την ανάπτυξη νέων χρήσιμων συστημάτων. Για παράδειγμα, το πρόγραμμα εντοπισμού σφαλμάτων που αναπτύχθηκε για το Helios σχεδιάζεται να μεταφερθεί στην πλατφόρμα Linux και οι βιβλιοθήκες για τη δημιουργία μιας γραφικής διεπαφής δεν θα συνδέονται με την πλατφόρμα.

Ο συγγραφέας του κελύφους Sway και της γλώσσας Hare αναπτύσσει έναν νέο μικροπυρήνα Helios και OC Ares


Πηγή: opennet.ru

Προσθέστε ένα σχόλιο