Διδακτικά Βιβλία του Παιδαγωγικού Ινστιτούτου

Αναζήτηση

Βρες
Εμφάνιση

Κύκλος εκτέλεσης διεργασιών

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

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

Οι διεργασίες μπορούν να κατηγοριοποιηθούν ανάλογα με το συνολικό χρόνο που περνούν σε εκρήξεις του ενός ή του άλλου είδους. Έτσι έχουμε τις διεργασίες που είναι προσανατολισμένες στην Ε/Ε (I/O bound) και περνούν τον περισσότερο χρόνο τους σε εκρήξεις Ε/Ε, και αυτές που είναι προσανατολισμένες στην ΚΜΕ (CPU bound) και απασχολούν περισσότερο την ΚΜΕ.

Ο μακροχρόνιος χρονοδρομολογητής πρέπει να κάνει ιδιαίτερα προσεκτική επιλογή των διεργασιών που θα εισαγάγει στο σύστημα για εκτέλεση. Αν διαλέξει πολλές διεργασίες προσανατολισμένες σε Ε/Ε τότε η ΚΜΕ θα υποαπασχολείται. Αν επιλέξει πολλές διεργασίες προσανατολισμένες στην ΚΜΕ, τότε οι συσκευές Ε/Ε θα μένουν ανενεργές ενώ η ΚΜΕ θα απασχολείται ασταμάτητα.