Χρονοπρογραμματισμός Flashcards
Τι είναι ο Χρονοδρομολογητής ή χρονοπρογραμματιστής;
Χρονοδρομολογητής ή χρονοπρογραμματιστής (scheduler)
είναι το τμήμα του Λ.Σ. το οποίο είναι επιφορτισμένο με την
ευθύνη της απόφασης ποια εκτελέσιμη διεργασία θα εκτελεστεί
πρώτη
Ποιές στιγμές είναι κατάλληλες για να γίνει χρονοπρογραμματισμός;
– Δημιουργείται μια νέα διεργασία και πρέπει να αποφασίσουμε αν θα εκτελεστεί αυτή ή η μητρική της
– Όταν μια διεργασία τερματίζεται και υπάρχουν άλλες διεργασίες σε ετοιμότητα
– Όταν μια διεργασία μπλοκάρεται
– Όταν γίνεται κάποια διακοπή Ε/Ε
Τι είναι οι προεκτοπιστικοί και μη αλγόριθμοι;
Μη προεκτοπιστικοί (non-preemptive) αλγόριθμοι είναι αυτοί που επιτρέπουν σε μία διεργασία να εκτελείται μέχρι να ολοκληρωθεί ή να παραχωρήσει εθελοντικά τον έλεγχο της CPU. Ενώ οι προεκτοπιστικοί αναστέλλουν την εκτέλεση των διεργασιών μετά από κάποιο διάστημα.
Ποιοι είναι οι βασικότεροι στόχοι των αλγορίθμων
χρονοπρογραμματισμού
για όλα τα συστήματα;
Οι βασικότεροι στόχοι των αλγορίθμων για όλα τα συστήματα είναι:
* Δικαιοσύνη – Να εκχωρείται σε κάθε διεργασία ένα δίκαιο μερίδιο της CPU
* Επιβολή της Πολιτικής – Εφαρμόζεται η καθορισμένη πολιτική; (π.χ. Τήρηση προτεραιοτήτων)
* Ισορροπία – να διατηρούνται απασχολημένα όλα τα τμήματα του συστήματος.
Ποιοι είναι οι βασικότεροι στόχοι των αλγορίθμων χρονοπρογραμματισμού
για τα συστήματα δέσμης;
Οι βασικότεροι στόχοι των αλγορίθμων για τα Συστήματα Δέσμης είναι:
* Διεκπεραιωτική Ικανότητα – μεγιστοποίηση του αριθμού εργασιών
που ολοκληρώνονται ανά ώρα
* Χρόνος Διεκπεραίωσης – να ελαχιστοποιηθεί ο χρόνος ολοκλήρωσης
μια διεργασίας
* Χρήση CPU — να διατηρείται η CPU ενεργός
Ποιοι είναι οι βασικότεροι στόχοι των αλγορίθμων
χρονοπρογραμματισμού
για τα αλληλεπιδραστικά συστήματα;
Οι βασικότεροι στόχοι των αλγορίθμων για τα Αλληλεπιδραστικά Συστήματα είναι:
* Χρόνος Απόκρισης– Να είναι όσο το δυνατόν μικρότερος
* Τήρηση Αναλογιών – Να ικανοποιούνται οι προσδοκίες των χρηστών
Ποιοι είναι οι βασικότεροι στόχοι των αλγορίθμων χρονοπρογραμματισμού για τα συστήματα πραγματικού χρόνου;
- Τήρηση προθεσμιών – να αποφεύγεται απώλεια δεδομένων
- Προβλεψιμότητα – να αποφεύγεται η υποβάθμιση της ποιότητας στα συστήματα πολυμέσων
Ποιοι είναι επιγραμματικά οι τρεις (3) τρόποι εξυπηρέτησης στα συστήματα δέσμης;
– Εξυπηρέτηση με βάση τη σειρά άφιξης
– Εξυπηρέτηση με βάση τη μικρότερη διάρκεια
– Εξυπηρέτηση με βάση τη μικρότερη διάρκεια που απομένει
Ποια είναι τα χαρακτηριστικά της εξυπηρέτησης με βάση τη σειρά άφιξης;
- First-Come First-Served
- Διεργασίες που μπλοκάρονται όταν πάλι γίνουν έτοιμες για εκτέλεση
μπαίνουν στο τέλος της ουράς.
Ποια είναι τα χαρακτηριστικά της εξυπηρέτησης με βάση τη μικρότερη διάρκεια;
- Προϋποθέτει ότι γνωρίζουμε τη διάρκεια εκτέλεσης των διεργασιών
- Βέλτιστος μέσος χρόνος διεκπεραίωσης αν όλες οι διεργασίες είναι διαθέσιμες ταυτόχρονα
Ποια είναι τα χαρακτηριστικά της εξυπηρέτησης με βάση τη μικρότερη διάρκεια που απομένει;
- Προεκτοπιστική έκδοση του προηγούμενου αλγορίθμου
- Προϋποθέτει ότι γνωρίζουμε τη διάρκεια εκτέλεσης των διεργασιών
- Γίνεται έλεγχος κάθε φορά που προστίθεται μια νέα διεργασία
Ποια είναι επιγραμματικά τα τρία (3) επίπεδα του Χρονοπρογραμματιστή Τριών Επιπέδων;
- Χρονοπρογραμματιστής Αποδοχής
- Χρονοπρογραμματιστής Μνήμης
- Χρονοπρογραμματιστής CPU
Ποια είναι η λειτουργία του Χρονοπρογραμματιστή Αποδοχής;
Χρονοπρογραμματιστής Αποδοχής: Αποφασίζει ποιες εργασίες θα
γίνουν αποδεκτές από το σύστημα (π.χ. Ορθή αναλογία υπολογιστικά
φραγμένων και Ε/Ε φραγμένων)
Ποια είναι η λειτουργία του Χρονοπρογραμματιστή Μνήμης;
Χρονοπρογραμματιστής Μνήμης (αποφασίζει ποιες θα μείνουν στη
μνήμη και ποιες θα αποθηκευθούν στο δίσκο) – Οι διεργασίες που
βρίσκονται ταυτόχρονα στη μνήμη καθορίζουν το βαθμό
πολυπρογραμματισμού.
– Για να πάρει τις αποφάσεις του ο χρονοπρογραμματιστής Μνήμης,
χρησιμοποιεί τα παρακάτω κριτήρια:
» Πόσος χρόνος πέρασε από τη στιγμή που η διεργασία μεταφέρθηκε στο
δίσκο/μνήμη ;
» Πόσο χρόνο CPU είχε στη διάθεση της η διεργασία ;
» Ποιο είναι το μέγεθος της διεργασίας ;
» Πόσο σημαντική είναι η διεργασία ;
Ποια είναι η λειτουργία του Χρονοπρογραμματιστή CPU;
Χρονοπρογραμματιστής CPU – Αξιοποιείται οποιοσδήποτε
προεκτοπιστικός ή μή αλγόριθμος, συμπεριλαμβανομένων αυτών που
είδαμε