Κεφάλαιο 3 | Ενότητα 5 | Επόμενο | Προηγούμενο | Λεξικό όρων

Διακοπές στον υπολογιστή VAX

Πως γίνεται ο έλεγχος των διακοπών

Μπορούμε να μετατρέψουμε το αλγοριθμικό διάγραμμα καταστάσεων ώστε να κάνει έλεγχο για την περίπτωση που εμφανιστεί μια διακοπή. Διακοπές που εμφανίζονται μεταξύ δύο εντολών ελέγχονται είτε στην αρχή του διαγράμματος (πριν η εντολή αποκωδικοποιηθεί) είτε στο τέλος (αφού εκτελεστεί η εντολή).
Στο παρακάτω σχήμα εμφανίζεται το αλγοριθμικό διάγραμμα καταστάσεων, όταν υπάρχει έλεγχος για διακοπές.

wpe5.jpg (31986 bytes)

Σχήμα 3.5.1 - Αλγοριθμικό διάγραμμα καταστάσεων για έλεγχο διακοπών. Όταν συμβεί μια διακοπή ο PC αποθηκεύεται στον IAR (interrupt return-address register) και στη συνέχεια ο PC παίρνει τη διεύθυνση της υπορουτίνας εξυπηρέτησης διακοπής ανάλογα με το είδος της διακοπής (page fault ή overflow) και εκτελείται η υπορουτίνα εξυπηρέτησης διακοπών. Παρατηρούμε ότι διακοπές μπορεί να προκύψουν είτε από σφάλμα σελίδας όταν υπάρχει προσπέλαση της μνήμης (σε εντολές φόρτωσης και αποθήκευσης) είτε από υπερχείλιση σε αριθμητικές πράξεις (αριθμητικές εντολές) (είτε από πολλούς άλλους λόγους. Αυτά είναι απλώς παραδείγματα).

ΔΡΑΣΤΗΡΙΟΤΗΤΑ 1

Να εξηγήσετε περιληπτικά τη διαδικασία εξυπηρέτησης μιας διακοπής όπως φαίνεται στο αλγοριθμικό διάγραμμα καταστάσεων του σχήματος 3.5.1; Να συγκρίνετε την απάντησή σας με τη λεζάντα του σχήματος