Skip to main content

Τι είναι η εναλλαγή περιβάλλοντος;

Ένα από τα μεγαλύτερα βήματα προς τα εμπρός στο σχεδιασμό και τη λειτουργία των κεντρικών μονάδων επεξεργασίας (CPU) ήρθε όταν οι σχεδιαστές των λειτουργικών συστημάτων υπολογιστών ανέπτυξαν τεχνικές για να επιτρέψουν στους χρήστες να πολλαπλασιάζονται.Το Multitasking σε σχέση με τους υπολογιστές είναι η πρακτική της λειτουργίας δύο ή περισσότερων προγραμμάτων ταυτόχρονα.Από την άποψη του τελικού χρήστη, αυτό μπορεί να μην φαίνεται περίπλοκο ή farfetched, αλλά στην πραγματικότητα αντιπροσωπεύει ένα σημαντικό άλμα στο σχεδιασμό του συστήματος.Στο Multitasking, η CPU πρέπει να ζυγίζει όλες τις λειτουργίες για τα διάφορα ενεργά προγράμματα, καταγράφοντας όπου είναι με κάθε πρόγραμμα καθώς ο χρήστης αλλάζει μεταξύ τους.Η εναλλαγή περιβάλλοντος είναι η διαδικασία που επιτρέπει στην CPU να θυμάται και να αποκαθιστά τις καταστάσεις για μια ποικιλία ενεργών προγραμμάτων, επιτρέποντάς της να ολοκληρώσει αυτή την πράξη juggling.

Κατά τη διάρκεια της εναλλαγής περιβάλλοντος, η CPU πέφτει σε οποιοδήποτε πρόγραμμα χειρίζεται αυτή τη στιγμή, αποθηκεύοντας το συγκεκριμένο μέρος που ήταν σε αυτό το πρόγραμμα, ώστε να μπορεί να επαναλάβει την πρόοδό του αργότερα.Για να το θέσουμε σε προοπτική, η εναλλαγή περιβάλλοντος είναι λίγο σαν να διαβάζεις πολλαπλά βιβλία ταυτόχρονα, αλλάζοντας συνεχώς μεταξύ τους μεταξύ τους, ενώ πάντα θυμίζεις τους αριθμούς σελίδων για κάθε ένα.Οι πληροφορίες αριθμού σελίδας για προγράμματα κατά τη διάρκεια μιας λειτουργίας μεταγωγής περιβάλλοντος κρατούνται από το μπλοκ ελέγχου διεργασίας (PCB).Το PCB αναφέρεται επίσης μερικές φορές ως το switchframe.Αυτές οι πληροφορίες αποθηκεύονται στη μνήμη εντός της πραγματικής CPU, μέχρι να χρειαστεί και πάλι.

Η εναλλαγή περιβάλλοντος συμβαίνει σε τρεις πιθανές καταστάσεις: Χειρισμός διακοπής, πολλαπλών εργασιών και αλλαγή χρήστη.Στο χειρισμό διακοπής, ένα άλλο πρόγραμμα διακόπτει το τρέχον πρόγραμμα ενώ λειτουργεί.Μόλις η CPU λάβει τη διακοπή, εκτελεί μια διακόπτη περιβάλλοντος για να ζυγίσει μεταξύ του προγράμματος που τρέχει και του προγράμματος που ζητεί άμεσα δεδομένα.Κατά τη διάρκεια της πολλαπλών εργασιών, η CPU flops εμπρός και πίσω μεταξύ των προγραμμάτων, δίνοντας μια χρονική φέτα χρόνου επεξεργασίας σε καθένα και εκτελώντας μια λειτουργία μεταγωγής περιβάλλοντος για αλλαγή μεταξύ των δύο.Για ορισμένα λειτουργικά συστήματα, εκτελείται επίσης ένας διακόπτης περιβάλλοντος κατά τη διάρκεια ενός διακόπτη χρήστη για το λειτουργικό σύστημα, αν και αυτό δεν απαιτείται ρητά.

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