Teknik
interrupt – driven I/O memungkinkan proses tidak membuang – buang waktu.
Prosesnya adalah CPU mengeluarkan perintah I/O pada modul I/O, bersamaan
perintah I/O dijalankan modul I/O maka CPU akan melakukan eksekusi perintah –
perintah lainnya. Apabila modul I/O telah selesai menjalankan instruksi yang
diberikan padanya akan melakukan interupsi pada CPU bahwa tugasnya telah
selesai. Dalam teknik ini kendali
perintah masih menjadi tanggung jawab CPU, baik pengambilan perintah dari
memori maupun pelaksanaan isi perintah tersebut. Terdapat selangkah kemajuan
dari teknik sebelumnya, yaitu CPU melakukan multitasking beberapa
perintah sekaligus sehingga tidak ada waktu tunggu bagi CPU. Cara kerja teknik
interupsi di sisi modul I/O adalah modul I/O menerima perintah, misal read.
Kemudian modul I/O melaksanakan perintah pembacaan dari peripheral dan
meletakkan paket data ke register data modul I/O, selanjutnya modul
mengeluarkan sinyal interupsi ke CPU melalui saluran kontrol. Kemudian modul
menunggu datanya diminta CPU. Saat permintaan terjadi, modul meletakkan data
pada bus data dan modul siap menerima perintah selanjutnya. Pengolahan interupsi saat perangkat I/O telah
menyelesaikan sebuah operasi I/O adalah sebagai berikut :
·
Perangkat
I/O akan mengirimkan sinyal interupsi ke CPU.
·
CPU
menyelesaikan operasi yang sedang dijalankannya kemudian merespon
interupsi.
·
CPU
memeriksa interupsi tersebut, kalau valid maka CPU akan mengirimkan sinyal acknowledgment
ke perangkat I/O untuk menghentikan interupsinya.
CPU mempersiapkan
pengontrolan transfer ke routine interupsi. Hal
yang dilakukan adalah menyimpan informasi yang diperlukan untuk· melanjutkan operasi yang tadi dijalankan sebelum adanya interupsi. Informasi yang diperlukan berupa : (a). Status prosesor, berisi register yang dipanggil PSW (program status word). (b). Lokasi intruksi berikutnya yang akan dieksekusi. Informasi tersebut kemudian disimpan dalam stack pengontrol sistem.
·
Kemudian
CPU akan menyimpan PC (program counter) eksekusi sebelum interupsi ke
stack pengontrol bersama informasi PSW. Selanjutnya mempersiapkan PC untuk
penanganan interupsi.
·
Selanjutnya
CPU memproses interupsi sempai selesai.
·
Apabila pengolahan interupsi selasai, CPU akan
memanggil kembali informasi yang telah disimpan pada stack pengontrol untuk
meneruskan operasi sebelum interupsi.
EmoticonEmoticon