RTOS: τι είναι ένα λειτουργικό σύστημα σε πραγματικό χρόνο

ενσωματωμένα κυκλώματα pcb

Πριν λίγες μέρες έκανα μια εισαγωγή σχετικά με τα STR, ένα λειτουργικό σύστημα για ρομπότ, αν και δεν είναι ακριβώς ένα λειτουργικό σύστημα όπως εννοείται στους υπολογιστές, αλλά μάλλον ένα πλαίσιο για προγραμματιστές ρομποτικής. Τώρα είναι η σειρά του Επέκταση RTOS, το οποίο δεν είναι ούτε ένα λειτουργικό σύστημα, αλλά μάλλον ένας πολύ συγκεκριμένος τύπος λειτουργικού συστήματος.

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

Τι είναι ένα RTOS;

Un RTOS (Λειτουργικό σύστημα σε πραγματικό χρόνο) Είναι, όπως υποδηλώνει το όνομά του, ένα λειτουργικό σύστημα σε πραγματικό χρόνο. Αυτό διαφέρει από τα λειτουργικά συστήματα κοινής χρήσης χρόνου, καθώς εργάζεστε σε ένα περιβάλλον όπου τα αποτελέσματα εξόδου είναι γνωστά με βάση τις εισόδους του συστήματος και εμφανίζονται σε μια γνωστή στιγμή. Επομένως, είναι πιο προβλέψιμα και σταθερά για τον έλεγχο συγκεκριμένων εργασιών και οι διεργασίες συνήθως βρίσκονται μόνιμα στη μνήμη (στις διαδικασίες χρονομερισμού, ο χρονοπρογραμματιστής φορτώνει και ξεφορτώνει από την κύρια μνήμη, όπως απαιτείται).

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

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

Τύποι RTOS

Διάφοροι τύπους λειτουργικά συστήματα σε πραγματικό χρόνο ή RTOS:

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

Εφαρμογές ενός RTOS

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

  • βιομηχανικός έλεγχος.
  • Εναλλαγή τηλεφώνου.
  • Έλεγχος πτήσης.
  • Προσομοιώσεις σε πραγματικό χρόνο.
  • στρατιωτικές εφαρμογές.
  • Συσκευές
  • Βασικές ηλεκτρονικές συσκευές ευρείας κατανάλωσης.
  • Ρομπότ
  • Κλπ

Χαρακτηριστικά του RTOS

Οι RTOS έχουν έναν αριθμό από ιδιαιτερότητες που τους δίνουν αυτά τα πλεονεκτήματα έναντι των υπολοίπων για αυτές τις απλές εργασίες διαχείρισης. Για να τα κατανοήσουμε καλύτερα, είναι απαραίτητο να γνωρίζουμε μια σειρά από βασικές έννοιες:

  • διαδικασία ή εργασία: είναι ένα υποπρόγραμμα που εκτελείται παράλληλα με το RTOS. Αυτή η διαδικασία μπορεί να εκτελέσει πολλές εργασίες, από τον έλεγχο μιας περιφερειακής συσκευής έως την εκτέλεση άλλων ενεργειών.
  • Εργασία: Αυτό είναι το όνομα που δίνεται στο χρόνο που χρειάζεται για να εκτελεστεί μια διαδικασία.
  • Σχεδιαστής: ο προγραμματιστής RTOS σάς επιτρέπει να διαχειρίζεστε τις προτεραιότητες και τους χρόνους των διεργασιών που εκτελούνται. Και υπάρχουν δύο κύριοι τύποι:
    • Συνεργατική: καλεί πρώτα τις διεργασίες υψηλότερης προτεραιότητας και όταν τελειώνει η διεργασία καλεί μια άλλη ή, αν η διεργασία διαρκεί περισσότερο από το αναμενόμενο, τη σκοτώνει και καλεί την επόμενη.
    • απαλλοτριωτική: Από καιρό σε καιρό καλεί αυτόματα μια διαδικασία, αλλά αυτό θα μπορούσε να οδηγήσει σε σφάλματα λόγω κακής προτεραιότητας στις διεργασίες ή εξαρτήσεων. Για να αποφευχθούν αυτά τα προβλήματα, εισάγεται η έννοια των σηματοφόρων.
  • Φανάρια: λειτουργούν με παρόμοιο τρόπο με τους κυκλοφοριακούς, ελέγχοντας πότε βρίσκεται σε εξέλιξη μια διαδικασία και παραλύουν την είσοδο των υπόλοιπων διεργασιών και, όταν αφήνει ελεύθερους τους πόρους, δίνει το «πράσινο φως» για την επόμενη εισαγω. Ορισμένα RTOS έχουν πολλούς σηματοφόρους, ο καθένας συγκεκριμένος για έναν κοινόχρηστο πόρο.
  • Δίσκοι: χρησιμοποιούνται για την επικοινωνία μεταξύ διεργασιών, ως buffer, για παράδειγμα για προσωρινή αποθήκευση δεδομένων ή όταν υπάρχουν πολλά στοιχεία που επιστρέφουν δεδομένα σε έναν μόνο δέκτη.
  • Διακοπές: λειτουργούν όπως αυτά των λειτουργικών συστημάτων time-sharing, αλλά σε ένα RTOS υπάρχουν κάποιες ιδιαιτερότητες. Αυτοί οι τύποι διακοπών χρησιμοποιούνται για διαχείριση χρόνου από έναν ελεγκτή.

Παραδείγματα RTOS

Αν αναρωτιέστε τι Λειτουργικά συστήματα RTOS υπάρχουν, η αλήθεια είναι ότι υπάρχει ένας μεγάλος αριθμός, ιδιόκτητες και ανοιχτού κώδικα:

  • Arm OS: ένα λειτουργικό σύστημα σχεδιασμένο για Cortex-M, Cortex-R, Cortex-A και με άδεια χρήσης με την άδεια Apache 2.0.
  • eCos: με τροποποιημένη άδεια GNU GPL, είναι ένα άλλο λειτουργικό σύστημα ανοιχτού κώδικα για ARM-XScale-Cortex-M, CalmRISC, 680×0-ColdFire, fr30, FR-V, H8, IA-32, MIPS, MN10300, OpenRISC, PowerPC , SPARC, SuperH και V8xx.
  • αποτυχαίνω: είναι ένα ιδιόκτητο σύστημα RTOS, για IoT και ενσωματωμένες εφαρμογές με αρχιτεκτονικές ARM7/9/11, ARM Cortex-A/R/M, AVR, AVR32, C16x, CR16C, ColdFire, H8, HCS12, M16C, M32C, MSP430, , PIC2/18/24, R32C, R32C, RISC-V, RL8, RH78, RX850/100/200/600, RZ, SH700A, STM2, ST8, V7, 850K78 και 0.
  • FreeRTOS: με άδεια ανοιχτού κώδικα του MIT, προορίζεται για ενσωματωμένη με ARM, AVR, AVR32, ColdFire, ESP32, HCS12, IA-32, Cortex-M3-M4-M7, Infineon XMC4000, MicroBlaze, MSP430, PIC, PIC32, αρχιτεκτονικές H8/S, RISC-V, RX100-200-600-700, 8052, STM32, TriCore και EFM32.
  • Φούξια: Είναι το διάσημο σύστημα ανοιχτού κώδικα που δημιουργήθηκε από την Google και έχει σχεδιαστεί για να λειτουργεί τόσο σε x86-64 όσο και σε ARM64.
  • Κολυμπρίος: ένα σύστημα RTOS για x86 υπό την ελεύθερη άδεια GNU GPL.
  • lynxOS: ένα άλλο RTOS, αλλά αυτό ιδιόκτητο, και για αρχιτεκτονικές τόσο διαφορετικές όπως οι Motorola 68010, x86/IA-32, ARM, Freescale PowerPC, PowerPC 970 και LEON. Επιπλέον, διαθέτει πιστοποίηση POSIX.
  • Ουδέτερο: ένα ιδιόκτητο σύστημα σε πραγματικό χρόνο για ARM, MIPS, PPC, SH, x86 και XScale.
  • Φοίνιξ-ΡΤΟΣ: κάτω από μια επιτρεπτή άδεια BSD, με υποστήριξη για αρχιτεκτονικές ARMv7 Cortex-M, ARMv7 Cortex-A, IA-32 και RISC-V.
  • QNX: κατέχει και ήταν πολύ δημοφιλής. Έχει σχεδιαστεί για να υποστηρίζει x86-64, ARM32, ARM64 και παλαιότερα MIPS, PowerPC, SH-4, StrongARM, XScale.
  • Linux: Αν και χρησιμοποιείται γενικά σε λειτουργία χρονομερισμού, ο πυρήνας μπορεί επίσης να λειτουργήσει ως προσέγγιση σε ένα RTOS για ενσωματωμένο.
  • Windows CE y Windows 10 IoT: Η Microsoft διαθέτει επίσης αυτές τις εκδόσεις σε πραγματικό χρόνο του ιδιόκτητου λειτουργικού της συστήματος.
  • Ζέφυρος: κάτω από την άδεια Apache 2.0 υπάρχει επίσης αυτό το άλλο RTOS ανοιχτού κώδικα για ARM (Cortex-M, Cortex-R και Cortex-A Series), x86, x86-64, ARC, RISC-V, Nios II, Xtensa και SPARC .

Γίνε ο πρώτος που θα σχολιάσει

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

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

*

*

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