Senin, 13 Desember 2010

Interrupts

Interrupts disediakan terutama sebagai cara untuk meningkatkan efisiensi pengolahan, karena sebagian besar perangkat eksternal jauh lebih lambat dibandingkan prosesor. Dengan adanya interrupts, prosesor dapat diperintahkan untuk mengeksekusi instruksi-instruksi lainnya pada saat operasi-operasi I/O sedang dilaksanakan. Program I/O terdiri dari tiga bagian :
·        Rangkaian instruksi disiapkan untuk operasi I/O, yang meliputi penyalinan data yang akan di out-put ke dalam buffer khusus.
·        Perintah I/O.
·        Rangkaian instruksi, untuk menyelesaikan operasi yang meliputi penyetelan suatu flag yang menandakan berhasil atau gagalnya operasi.


Interrupts dan Siklus Instruksi
Interrupts adalah sebuah interupsi terhadap rangkaian eksekusi normal. Jadi program pengguna tidak harus berisi kode khusus untuk mengakomodasi interrupt. Pada siklus interrupt, prosesor memeriksa apakah telah terjadi interrupt, yang diindikasikan oleh adanya signal interrupt. Maka apabila interrupt ditangguhkan, prosesor melakukan hal-hal dibawah ini:
1.      Prosesor menangguhkan eksekusi program yang sedang di eksekusi dan menyimpan konteksnya.
2.      Prosesor menyetel program counter ke alamat awal routine interrupt handler (program untuk melayani perangkat I/O).

Multiple Interrupt
Dapat diambil dua buah bagi interrupt jamak ini. Pertama adalah dengan tidak mengizinkan terjadinya interrupt lain pada saat suatu interrupt sedang diproses. Interrupt yang tidak diizinkan dapat diartikan bahwa prosesor dapat dan akan mengabaikan sinyal interrupt request itu. Kedua adalah dengan mendefinisikan prioritas bagi interrupt dan mengizinkan interrupt berprioritas tinggi menyababkan interrupt handler yang berprioritas lebih rendah untuk menginterupsi dirinya.

Fungsi I/O
Sebuah modul I/O dapat saling bertukardata secara langsungdengan CPU.

Tidak ada komentar:

Posting Komentar