Real-Time Linux επιτέλους εδώ μετά από 20 χρόνια

Μετά από 20 χρόνια, το Real-Time (PREEMPT_RT) είναι επιτέλους έτοιμο για τον κύριο πυρήνα. Ο Linus ευλόγησε τον κώδικα ενώ βρισκόταν στο Open Source Summit Europe και έτσι ο κώδικας του Linux σε πραγματικό χρόνο (Real-Time Linux) θα βρίσκεται πλέον σε όλες τις διανομές Linux από τον επερχόμενο πυρήνα Linux 6.12. real time linux

Αυτό σημαίνει ότι το Linux θα αρχίσει σύντομα να εμφανίζεται σε πιο κρίσιμες συσκευές και βιομηχανικό υλικό.

Χρειάστηκε βέβαια αρκετός χρόνος για να φτάσει ως εδώ.

Το RTOS είναι ένα εξειδικευμένο σύστημα που έχει σχεδιαστεί για να χειρίζεται χρονικά κρίσιμες εργασίες με ακρίβεια και αξιοπιστία. Σε αντίθεση με τα λειτουργικά συστήματα γενικής χρήσης όπως τα Windows ή το macOS, ένα RTOS έχει κατασκευαστεί για να ανταποκρίνεται σε συμβάντα και να επεξεργάζεται δεδομένα εντός αυστηρών χρονικών περιορισμών, που συχνά μετρώνται σε χιλιοστά του δευτερολέπτου ή μικροδευτερόλεπτα.

Όπως ανέφερε ο Steven Rostedt, ένας εξέχων προγραμματιστής του Linux σε πραγματικό χρόνο και μηχανικός της Google, “Ο πραγματικός χρόνος είναι το ταχύτερο σενάριο της χειρότερης περίπτωσης”.

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

Γιατί τώρα το Real-Time Linux είναι έτοιμο για τον τον πυρήνα;

“Στην πραγματικότητα δεν θα πιέζαμε για κάτι αν δεν πιστεύαμε ότι ήταν έτοιμο”, ανέφερε ο Rostedt.

“Σχεδόν τα πάντα ξαναγράφτηκαν τουλάχιστον τρεις φορές πριν μπουν στον κύριο κώδικα, επειδή είχαμε τόσο υψηλά τον πήχη”.

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

“Στην αρχή, δεν μπορούσαμε καν να αναφέρουμε το “σε πραγματικό χρόνο””, θυμάται ο Rostedt. “Όλοι έλεγαν “Α, δεν μας ενδιαφέρει ο πραγματικός χρόνος”. Ένα άλλο πρόβλημα ήταν τα χρήματα. Για πολλά χρόνια η χρηματοδότηση για το Real-Time Linux ήταν ασταθής. Το 2015, το Linux Foundation ίδρυσε το συλλογικό έργο Real-Time Linux (RTL) για να συντονίσει τις προσπάθειες γύρω από την του PREEMPT_RT.

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

Ωστόσο, το print_k δημιουργεί μεγάλες καθυστερήσεις στο Linux όποτε καλείται. Αυτό το είδος επιβράδυνσης είναι απαράδεκτο σε συστήματα σε πραγματικό χρόνο.

Ο Rostedt ανέφερ: “Το Print_k καλείται να χειριστεί χίλιες διαφορετικές καταστάσεις. Έτσι κάθε φορά που τροποποιούσαμε το print_k για να κάνουμε κάτι, κάτι χαλούσε.

Το print_k είναι υπέροχο με τον εντοπισμό σφαλμάτων αλλά ο λανθάνων χρόνος είναι ως επί το πλείστον περίπου 30 μικροδευτερόλεπτα. Αυτή η καθυστέρηση ήταν το πρόβλημα του print_k.

Μετά όμως από πολλή δουλειά, έντονες συζητήσεις και αρκετές απορριφθείσες προτάσεις, επιτεύχθηκε συμβιβασμός νωρίτερα φέτος. Ο Torvalds είναι χαρούμενος, οι προγραμματιστές του Real-Time Linux είναι ευχαριστημένοι, οι χρήστες του print_K είναι ευχαριστημένοι και, επιτέλους, το Real-Time Linux είναι πραγματικότητα.

Get the best viral stories straight into your inbox!















giorgos

Written by giorgos

Ο Γιώργος ακόμα αναρωτιέται τι κάνει εδώ....

One Comment

Leave a Reply

Αφήστε μια απάντηση

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

Το μήνυμα σας δεν θα δημοσιευτεί εάν:
1. Περιέχει υβριστικά, συκοφαντικά, ρατσιστικά, προσβλητικά ή ανάρμοστα σχόλια.
2. Προκαλεί βλάβη σε ανηλίκους.
3. Παρενοχλεί την ιδιωτική ζωή και τα ατομικά και κοινωνικά δικαιώματα άλλων χρηστών.
4. Διαφημίζει προϊόντα ή υπηρεσίες ή διαδικτυακούς τόπους .
5. Περιέχει προσωπικές πληροφορίες (διεύθυνση, τηλέφωνο κλπ).