λογισμικό

Γνώση Υπολογιστών >> λογισμικό >  >> Συμπίεση δεδομένων

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

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

Δείτε πώς λειτουργούν οι μη προληπτικοί αλγόριθμοι:

1. Επιλογή διαδικασίας:

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

2. Αδιάκοπη εκτέλεση:

- Μόλις μια διεργασία ξεκινήσει να εκτελείται, δεν μπορεί να διακοπεί από άλλη διεργασία. Αυτό σημαίνει ότι η επιλεγμένη διεργασία θα συνεχίσει να εκτελείται μέχρι να ολοκληρώσει την εκτέλεσή της ή να εγκαταλείψει οικειοθελώς την CPU (π.χ. εκτελώντας μια λειτουργία I/O).

3. Χωρίς προνόμιο:

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

4. Ολοκλήρωση:

- Η διαδικασία συνεχίζει να εκτελεί τις εντολές της μέχρι να ολοκληρώσει την εκτέλεσή της ή να φτάσει σε κατάσταση αποκλεισμού (αναμονή για I/O ή κάποιο πόρο). Μόλις ολοκληρωθεί η διαδικασία, η CPU είναι διαθέσιμη για τον προγραμματισμό της επόμενης διαδικασίας.

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

Παραδείγματα αλγορίθμων μη προληπτικού προγραμματισμού περιλαμβάνουν:

- First-Come First-Served (FCFS): Οι διεργασίες εκτελούνται με τη σειρά που φτάνουν, χωρίς να λαμβάνεται υπόψη η προτεραιότητα ή οι απαιτήσεις πόρων τους.

- Σύντομη εργασία Πρώτη (SJF) χωρίς προνόμιο: Αυτός ο αλγόριθμος επιλέγει τη διαδικασία με τον συντομότερο εκτιμώμενο χρόνο εκτέλεσης για την επόμενη εκτέλεση. Ωστόσο, από τη στιγμή που η διεργασία ξεκινήσει να εκτελείται, δεν μπορεί να προληφθεί από άλλη διεργασία, ακόμα κι αν η τελευταία φτάσει αργότερα με μικρότερο εκτιμώμενο χρόνο εκτέλεσης.

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

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