Jelaskan Teknik Interrupt – Driven I/O?
Interrupt – Driven I/O
Teknik interrupt – driven I/O memungkinkan proses tidak membuang – buang waktu. Prosesnya ialah CPU mengeluarkan perintah I/O pada modul I/O, bersamaan perintah I/O dijalankan modul I/O maka CPU akan melaksanakan sanksi perintah – perintah lainnya. Apabila modul I/O telah tamat menjalankan isyarat yang diberikan padanya akan melaksanakan 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 melaksanakan multitasking beberapa perintah sekaligus sehingga tidak ada waktu tunggu bagi CPU. Cara kerja teknik interupsi di sisi modul I/O ialah modul I/O mendapatkan 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 susukan kontrol. Kemudian modul menunggu datanya diminta CPU. Saat ajakan terjadi, modul meletakkan data pada bus data dan modul siap mendapatkan perintah selanjutnya. Pengolahan interupsi ketika perangkat I/O telah menuntaskan sebuah operasi I/O ialah sebagai berikut :
Teknik interrupt – driven I/O memungkinkan proses tidak membuang – buang waktu. Prosesnya ialah CPU mengeluarkan perintah I/O pada modul I/O, bersamaan perintah I/O dijalankan modul I/O maka CPU akan melaksanakan sanksi perintah – perintah lainnya. Apabila modul I/O telah tamat menjalankan isyarat yang diberikan padanya akan melaksanakan 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 melaksanakan multitasking beberapa perintah sekaligus sehingga tidak ada waktu tunggu bagi CPU. Cara kerja teknik interupsi di sisi modul I/O ialah modul I/O mendapatkan 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 susukan kontrol. Kemudian modul menunggu datanya diminta CPU. Saat ajakan terjadi, modul meletakkan data pada bus data dan modul siap mendapatkan perintah selanjutnya. Pengolahan interupsi ketika perangkat I/O telah menuntaskan sebuah operasi I/O ialah sebagai berikut :
- Perangkat I/O akan mengirimkan sinyal interupsi ke CPU.
- CPU menuntaskan operasi yang sedang dijalankannya kemudian merespon interupsi.
- CPU menilik interupsi tersebut, jika valid maka CPU akan mengirimkan sinyal acknowledgment ke perangkat I/O untuk menghentikan interupsinya.
- CPU mempersiapkan pengontrolan transfer ke routine interupsi. Hal yang dilakukan ialah menyimpan warta yang diharapkan untuk melanjutkan operasi yang tadi dijalankan sebelum adanya interupsi. Informasi yang diharapkan 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) sanksi sebelum interupsi ke stack pengontrol bersama warta PSW. Selanjutnya mempersiapkan PC untuk penanganan interupsi.
- Selanjutnya CPU memproses interupsi sempai selesai.
- Apabila pengolahan interupsi selasai, CPU akan memanggil kembali warta yang telah disimpan pada stack pengontrol untuk meneruskan operasi sebelum interupsi