Τι είναι το λειτουργικό σύστημα σε πραγματικό χρόνο (RTOS) και πώς λειτουργεί;

Δοκιμάστε Το Όργανο Μας Για Την Εξάλειψη Των Προβλημάτων





Όταν ακούμε τη λέξη λειτουργικό σύστημα, πρώτα στο μυαλό μας έρχεται ότι το λειτουργικό σύστημα που χρησιμοποιείται σε φορητούς υπολογιστές και υπολογιστές. Γενικά, χρησιμοποιούμε διαφορετικούς τύπους λειτουργικών συστημάτων όπως τα Windows XP, Linux, Ubuntu, Windows 7,8.8.1 και 10. Στα smartphone, τα λειτουργικά συστήματα είναι όπως το KitKat, Jellybean, marshmallow και Nougat. Σε μια ψηφιακή ηλεκτρονική συσκευή, υπάρχει κάποιο είδος λειτουργικού συστήματος που έχει αναπτυχθεί από το πρόγραμμα μικροελεγκτή . Υπάρχουν διαφορετικοί τύποι λειτουργικών συστημάτων για ανάπτυξη για τον μικροελεγκτή, αλλά εδώ έχουμε συζητήσει το λειτουργικό σύστημα σε πραγματικό χρόνο.

Τι είναι το λειτουργικό σύστημα σε πραγματικό χρόνο;

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




Δομή του RTOS

Δομή του RTOS

Τύποι RTOS

Υπάρχουν τρεις διαφορετικοί τύποι RTOS που ακολουθούν



  • Μαλακό λειτουργικό σύστημα σε πραγματικό χρόνο
  • Σκληρό λειτουργικό σύστημα σε πραγματικό χρόνο
  • Ισχυρό λειτουργικό σύστημα σε πραγματικό χρόνο
Τύποι RTOS

Τύποι RTOS

Λειτουργικό σύστημα Soft σε πραγματικό χρόνο

Το μαλακό λειτουργικό σύστημα σε πραγματικό χρόνο έχει συγκεκριμένες προθεσμίες, μπορεί να χαθούν και θα αναλάβουν την ενέργεια τη στιγμή t = 0 +. Το μαλακό λειτουργικό σύστημα σε πραγματικό χρόνο είναι ένας τύπος λειτουργικού συστήματος και δεν περιέχει περιορισμένους σε ακραίους κανόνες. Ο κρίσιμος χρόνος αυτού του λειτουργικού συστήματος καθυστερεί σε κάποιο βαθμό. Τα παραδείγματα αυτού του λειτουργικού συστήματος είναι η ψηφιακή κάμερα, τα κινητά τηλέφωνα και τα ηλεκτρονικά δεδομένα κ.λπ.

Λειτουργικό σύστημα Soft Real Time

Λειτουργικό σύστημα Soft σε πραγματικό χρόνο

Σκληρό λειτουργικό σύστημα σε πραγματικό χρόνο

Αυτός είναι επίσης ένας τύπος λειτουργικού συστήματος και προβλέπει προθεσμία. Οι προβλεπόμενες προθεσμίες θα αντιδράσουν t = 0. Μερικά παραδείγματα αυτού του λειτουργικού συστήματος είναι ο έλεγχος αερόσακων στα αυτοκίνητα, το φρένο κατά της κλειδαριάς και το σύστημα ελέγχου κινητήρα κ.λπ.

Λειτουργικό Σύστημα σε πραγματικό χρόνο

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


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

Υπάρχουν διάφοροι τύποι βασικών λειτουργιών ενός RTOS που ακολουθούν

  • Προγραμματιστής βάσει προτεραιότητας
  • Το ρολόι συστήματος διακόπτει τη ρουτίνα
  • Ντετερμινιστική συμπεριφορά
  • Συγχρονισμός και ανταλλαγή μηνυμάτων
  • Υπηρεσία RTOS

Προγραμματιστής βάσει προτεραιότητας

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

Στο σύστημα, η διαδικασία υψηλότερης προτεραιότητας θα έχει τον CPU

  • Τρέχει για να κλείσει
  • Εάν η αρχική εργασία προεγκατασταθεί από τη νέα, τότε προετοιμάζεται μια διαδικασία υψηλής προτεραιότητας.

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

Έτοιμο για εκτέλεση

Το έτοιμο για εκτέλεση λέγεται ότι όταν η διαδικασία έχει όλους τους πόρους για εκτέλεση, αλλά δεν πρέπει να είναι σε κατάσταση λειτουργίας. Τότε καλείται ως έτοιμο να τρέξει.

Τρέξιμο

Εάν η εργασία εκτελείται τότε λέγεται ότι έχει κατάσταση λειτουργίας.

Αποκλείστηκε

Σε αυτήν την κατάσταση, εάν δεν διαθέτει αρκετούς πόρους για εκτέλεση, τότε αποστέλλεται σε κατάσταση αποκλεισμού.

Τρεις τεχνικές τροποποιούνται για τον προγραμματισμό της εργασίας, ακολουθούν με την περιγραφή τους.

Συνεργαζόμενος προγραμματισμός

Σε αυτόν τον τύπο προγραμματισμού, η εργασία θα εκτελεστεί έως ότου ολοκληρωθεί η εκτέλεση

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

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

Προληπτικός προγραμματισμός

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

Ρουτίνα διακοπής ρολογιού συστήματος

Για την εκτέλεση της ευαίσθητης στο χρόνο λειτουργίας, το RTOS θα παρέχει κάποιο είδος ρολογιού συστήματος. Εάν υπάρχει ρολόι συστήματος 1ms, τότε πρέπει να ολοκληρώσετε την εργασία σε 50ms. Συνήθως, υπάρχει ένα API που σας ακολουθεί για να πείτε 'Σε 50ms ξυπνήστε με'. Ως εκ τούτου, το έργο θα ήταν σε θέση ύπνου έως ότου ξυπνήσει το RTOS. Έχουμε δύο ειδοποιήσεις ότι το ξύπνημα δεν θα διασφαλίσει ότι θα τρέξει ακριβώς εκείνη τη στιγμή, εξαρτάται από την προτεραιότητα και αν η υψηλότερη προτεραιότητα εκτελείται αυτήν τη στιγμή θα καθυστερούσε.

Ντετερμινιστική συμπεριφορά

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

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

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

Συγχρονισμός και ανταλλαγή μηνυμάτων

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

  • Σηματοφόροι
  • Σημαίες εκδηλώσεων
  • Γραμματοκιβώτια
  • Σωλήνες
  • Ουρές μηνυμάτων

Υπηρεσία RTOS

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

  • Υπηρεσίες χρόνου
  • Διακοπή υπηρεσιών χειρισμού
  • Υπηρεσίες διαχείρισης συσκευών
  • Υπηρεσίες διαχείρισης μνήμης
  • Υπηρεσίες εισόδου-εξόδου

Πλεονεκτήματα του RTOS

  • Όταν όλοι οι πόροι και οι συσκευές είναι ανενεργές, τότε το RTOS δίνει τη μέγιστη κατανάλωση του συστήματος και περισσότερη έξοδο.
  • Όταν εκτελείται μια εργασία δεν υπάρχει πιθανότητα να λάβετε το σφάλμα, επειδή το RTOS είναι χωρίς λάθη.
  • Η κατανομή μνήμης είναι ο καλύτερος τύπος για διαχείριση σε αυτόν τον τύπο συστήματος.
  • Σε αυτόν τον τύπο συστήματος, ο χρόνος μετατόπισης είναι πολύ μικρότερος.
  • Λόγω του μικρού μεγέθους του προγράμματος, το RTOS χρησιμοποιείται στο ενσωματωμένο σύστημα όπως οι μεταφορές και άλλα.

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