Αλγόριθμος προγραμματισμού Round Robin με παράδειγμα

Πίνακας περιεχομένων:

Anonim

Τι είναι ο προγραμματισμός Round-Robin;

Το όνομα αυτού του αλγορίθμου προέρχεται από την αρχή του round-robin, όπου κάθε άτομο παίρνει το ίδιο μερίδιο σε κάτι με τη σειρά. Είναι ο παλαιότερος, απλούστερος αλγόριθμος προγραμματισμού, ο οποίος χρησιμοποιείται κυρίως για πολλαπλές εργασίες.

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

Σε αυτό το σεμινάριο λειτουργικού συστήματος, θα μάθετε:

  • Τι είναι ο προγραμματισμός Round-Robin;
  • Χαρακτηριστικά του προγραμματισμού Round-Robin
  • Παράδειγμα προγραμματισμού Round-robin
  • Πλεονέκτημα του προγραμματισμού Round-robin
  • Μειονεκτήματα του προγραμματισμού Round-robin
  • Καθυστέρηση χειρότερης περίπτωσης

Χαρακτηριστικά του προγραμματισμού Round-Robin

Ακολουθούν τα σημαντικά χαρακτηριστικά του προγραμματισμού Round-Robin:

  • Το Round robin είναι ένας προληπτικός αλγόριθμος
  • Η CPU μετατοπίζεται στην επόμενη διαδικασία μετά από καθορισμένο χρονικό διάστημα, το οποίο ονομάζεται χρονικό κβαντικό / χρονικό κομμάτι.
  • Η διαδικασία που έχει προκριθεί προστίθεται στο τέλος της ουράς.
  • Το Round Robin είναι ένα υβριδικό μοντέλο που βασίζεται στο ρολόι
  • Το χρονικό διάστημα πρέπει να είναι το ελάχιστο, το οποίο εκχωρείται για μια συγκεκριμένη εργασία που πρέπει να υποβληθεί σε επεξεργασία. Ωστόσο, ενδέχεται να διαφέρει από OS σε OS.
  • Είναι ένας αλγόριθμος πραγματικού χρόνου που ανταποκρίνεται στο συμβάν εντός συγκεκριμένου χρονικού ορίου.
  • Το Round robin είναι ένας από τους παλαιότερους, πιο έντιμους και ευκολότερους αλγόριθμους.
  • Χρησιμοποιείται ευρέως μέθοδος προγραμματισμού στο παραδοσιακό λειτουργικό σύστημα.

Παράδειγμα προγραμματισμού Round-robin

Σκεφτείτε αυτό ακολουθώντας τρεις διαδικασίες

Ουρά διεργασίας Χρόνος έκρηξης
Ρ1 4
Ρ2 3
Ρ3 5

Βήμα 1) Η εκτέλεση ξεκινά με τη διαδικασία P1, η οποία έχει χρόνο έκρηξης 4. Εδώ, κάθε διαδικασία εκτελείται για 2 δευτερόλεπτα. Τα P2 και P3 βρίσκονται ακόμη στην ουρά αναμονής.

Βήμα 2 ) Τη στιγμή = 2, το P1 προστίθεται στο τέλος της ουράς και το P2 αρχίζει να εκτελείται

Βήμα 3) Τη στιγμή = 4, το P2 έχει προκριθεί και προσθέστε στο τέλος της ουράς. Το P3 ξεκινά την εκτέλεση.

Βήμα 4) Τη στιγμή = 6, το P3 είναι προεπιλεγμένο και προστίθεται στο τέλος της ουράς. Το P1 αρχίζει να εκτελείται.

Βήμα 5) Τη στιγμή = 8, το P1 έχει χρόνο έκρηξης 4. Έχει ολοκληρώσει την εκτέλεση. Το P2 ξεκινά την εκτέλεση

Βήμα 6) Το P2 έχει χρόνο έκρηξης 3. Έχει ήδη εκτελεστεί για 2 διαστήματα. Τη στιγμή = 9, το P2 ολοκληρώνει την εκτέλεση. Στη συνέχεια, το P3 ξεκινά την εκτέλεση έως ότου ολοκληρωθεί.

Βήμα 7) Ας υπολογίσουμε τον μέσο χρόνο αναμονής για το παραπάνω παράδειγμα.

Wait timeP1= 0+ 4= 4P2= 2+4= 6P3= 4+3= 7

Πλεονέκτημα του προγραμματισμού Round-robin

Εδώ είναι τα πλεονεκτήματα / οφέλη της μεθόδου προγραμματισμού Round-robin:

  • Δεν αντιμετωπίζει τα ζητήματα της λιμοκτονίας ή του φαινομένου της συνοδείας.
  • Όλες οι εργασίες έχουν δίκαιη κατανομή CPU.
  • Ασχολείται με όλη τη διαδικασία χωρίς καμία προτεραιότητα
  • Εάν γνωρίζετε τον συνολικό αριθμό διαδικασιών στην ουρά εκτέλεσης, τότε μπορείτε επίσης να υποθέσετε τον χειρότερο χρόνο απόκρισης για την ίδια διαδικασία.
  • Αυτή η μέθοδος προγραμματισμού δεν εξαρτάται από τον χρόνο έκρηξης. Γι 'αυτό είναι εύκολα εφαρμόσιμο στο σύστημα.
  • Μόλις μια διαδικασία εκτελεστεί για ένα συγκεκριμένο σύνολο της περιόδου, η διαδικασία προεπιλέγεται και μια άλλη διαδικασία εκτελείται για τη συγκεκριμένη χρονική περίοδο.
  • Επιτρέπει στο λειτουργικό σύστημα να χρησιμοποιήσει τη μέθοδο εναλλαγής περιβάλλοντος για να αποθηκεύσει καταστάσεις προκαθορισμένων διαδικασιών.
  • Δίνει την καλύτερη απόδοση από την άποψη του μέσου χρόνου απόκρισης.

Μειονεκτήματα του προγραμματισμού Round-robin

Εδώ είναι τα μειονεκτήματα / μειονεκτήματα της χρήσης του προγραμματισμού Round-robin:

  • Εάν ο χρόνος κοπής του λειτουργικού συστήματος είναι χαμηλός, η έξοδος του επεξεργαστή θα μειωθεί.
  • Αυτή η μέθοδος ξοδεύει περισσότερο χρόνο στην αλλαγή περιβάλλοντος
  • Η απόδοσή του εξαρτάται σε μεγάλο βαθμό από το κβαντικό του χρόνου.
  • Οι προτεραιότητες δεν μπορούν να οριστούν για τις διαδικασίες.
  • Ο προγραμματισμός Round-Robin δεν δίνει ιδιαίτερη προτεραιότητα σε πιο σημαντικές εργασίες.
  • Μειώνει την κατανόηση
  • Ο χαμηλότερος κβαντικός χρόνος οδηγεί σε υψηλότερη γενική εναλλαγή περιβάλλοντος στο σύστημα.
  • Η εύρεση ενός σωστού κβαντικού χρόνου είναι ένα αρκετά δύσκολο έργο σε αυτό το σύστημα.

Καθυστέρηση χειρότερης περίπτωσης

Αυτός ο όρος χρησιμοποιείται για τον μέγιστο χρόνο που απαιτείται για την εκτέλεση όλων των εργασιών.

  • dt = Υποδείξτε το χρόνο ανίχνευσης κατά την εισαγωγή μιας εργασίας στη λίστα
  • st = Υποδηλώστε εναλλαγή χρόνου από τη μία εργασία στην άλλη
  • et = Υποδείξτε χρόνο εκτέλεσης εργασιών

Τύπος:

Tworst = {(dti+ sti + eti ), + (dti+ sti + eti )2 +… + (dti+ sti + eti )N., + (dti+ sti + eti + eti) N} + tISRt,SR = sum of all execution times

Περίληψη:

  • Το όνομα αυτού του αλγορίθμου προέρχεται από την αρχή του round-robin, όπου κάθε άτομο παίρνει το ίδιο μερίδιο σε κάτι με σειρά.
  • Το Round robin είναι ένας από τους παλαιότερους, πιο δίκαιους και ευκολότερους αλγόριθμους και ευρέως χρησιμοποιούμενες μεθόδους προγραμματισμού στο παραδοσιακό λειτουργικό σύστημα.
  • Το Round robin είναι ένας προληπτικός αλγόριθμος
  • Το μεγαλύτερο πλεονέκτημα της μεθόδου προγραμματισμού round-robin είναι ότι Αν γνωρίζετε τον συνολικό αριθμό διαδικασιών στην ουρά εκτέλεσης, τότε μπορείτε επίσης να υποθέσετε τον χειρότερο χρόνο απόκρισης για την ίδια διαδικασία.
  • Αυτή η μέθοδος ξοδεύει περισσότερο χρόνο στην αλλαγή περιβάλλοντος
  • Η χειρότερη καθυστέρηση είναι ένας όρος που χρησιμοποιείται για τον μέγιστο χρόνο που απαιτείται για την εκτέλεση όλων των εργασιών.