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

Γνώση Υπολογιστών >> Προγραμματισμός >  >> C /C + + Προγραμματισμός

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

Σε αλγόριθμους μη προληπτικού προγραμματισμού, μόλις ξεκινήσει η εκτέλεση μιας διεργασίας, συνεχίζει να εκτελείται μέχρι να ολοκληρωθεί ή να μπλοκάρει για κάποιο λόγο. Τα παραδείγματα περιλαμβάνουν το FIFO (First-In-First-Out), το LIFO (Last-In-First-Out) και τον προγραμματισμό προτεραιότητας.

First-In-First-Out (FIFO) / First Come First Serve (FCFS)

* Ο αλγόριθμος προγραμματισμού First-In-First-Out (FIFO) είναι ο απλούστερος αλγόριθμος προγραμματισμού.

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

* Ο αλγόριθμος προγραμματισμού FIFO χρησιμοποιεί τη δομή δεδομένων ουράς για να προγραμματίσει τις εργασίες.

* Ο μέσος χρόνος αναμονής είναι υψηλός για τον προγραμματισμό FIFO.

* Ο αλγόριθμος προγραμματισμού FIFO δεν είναι προληπτικός, πράγμα που σημαίνει ότι από τη στιγμή που μια εργασία ξεκινήσει να εκτελείται, δεν μπορεί να διακοπεί από άλλη εργασία, ανεξάρτητα από την προτεραιότητα ή τον χρόνο εκτέλεσης της νέας εργασίας.

Last-In-First-Out (LIFO)

* Ο αλγόριθμος προγραμματισμού Last-In-First-Out (LIFO) λειτουργεί αντίθετα από τον αλγόριθμο προγραμματισμού FIFO.

* Σύμφωνα με τη LIFO, η τελευταία εργασία που έφτασε στην ουρά εκτελείται πρώτη.

* Ο αλγόριθμος προγραμματισμού LIFO χρησιμοποιεί επίσης τη δομή δεδομένων ουράς για τον προγραμματισμό των εργασιών.

* Ο αλγόριθμος προγραμματισμού LIFO είναι επίσης ένας μη προληπτικός αλγόριθμος προγραμματισμού.

* Ο μέσος χρόνος αναμονής για τον προγραμματισμό LIFO είναι πολύ υψηλός, καθώς οι νεοαφιχθέντες θέσεις εργασίας πρέπει να περιμένουν πολύ καιρό για να πάρουν τη σειρά τους.

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

* Ο αλγόριθμος προγραμματισμού προτεραιότητας επιτρέπει την εκτέλεση εργασιών με βάση τις προτεραιότητές τους.

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

* Εάν υπάρχουν δύο ή περισσότερες εργασίες με το ίδιο επίπεδο προτεραιότητας, η πολιτική FIFO ή LIFO μπορεί να χρησιμοποιηθεί για να σπάσει η ισοπαλία.

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

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα