49. Κύκλος Ι/Ο που ρυθμίζεται από διακοπές (interrupts)

 

·         βήμα 1: Ένας οδηγός συσκευής στέλνει ένα αίτημα I/O εκ μέρους κάποιας διεργασίας. Η CPU πάντα εκτελεί ένα έλεγχο για διακοπές από τον ελεγκτή διακοπών (interrupt controller) ανάμεσα σε κάθε εντολή που εκτελεί.

·         Βήμα 2: Ο οδηγός συσκευής δίνει σήμα στον ελεγκτή Ι/Ο για την κατάλληλη συσκευή που εκκινεί την κατάλληλη Ι/Ο.

·         Βήμα 3: Η συσκευή στέλνει σήμα στον ελεγκτή Ι/Ο ότι είναι έτοιμη να λάβει δεδομένα, η έξοδος είναι ολοκληρωμένη ή ότι έχει παραχθεί κάποιο λάθος.

·         Βήμα 4:Η CPU λαμβάνει την διακοπή και μεταφέρει τον έλεγχο στην ρουτίνα χειρισμού διακοπών.

·         Βήμα 5:Ο χειριστής διακοπών καθορίζει το λόγο της διακοπής, κάνει τις απαραίτητες διαδικασίες, και επιστρέφει  από την εντολή διακοπής

·         Βήμα 6: Η CPU επιστρέφει στη κατάσταση λειτουργίας πριν το μήνυμα διακοπής.

·         Βήμα 7: Η CPU συνεχίζει να εκτελεί μέχρι ο κύκλος να ξεκινήσει ξανά.