INTERUPSI

             Okay kita akan membahas materi mengenai INTERUPSI, Disini akan kita bahas bagaimana interupsi itu bisa terjadi


A.  Pengertian dan Fungsi Interupsi

Interupsi merupakan suatu mekanisme dimana komponen dari sistem komputer / modul komputer seperti Perangkat I/O, Memory, dan lain lain menginterupsi urutan normal sebuah proses dari CPU karena terjadi kondisi yang sangat penting. Interupsi merupakan mekanisme penghentian atau pengalihan pengolahan instruksi dalam CPU kepada interupsi rutin. Hampir semua modul (memori dan I/O) memiliki mekanisme yang  dapat menginterupsi kerja CPU.

Secara umum fungsi interupsi adalah untuk manajemen pengeksekusian instruksi rutin agar efektif dan efisien antara CPU, modul – modul I/O serta memori. Setiap komponen komputer dapat menjalankan tugasnya secara bersamaan, meskipun kecepatan eksekusi setiap modul berbeda, akan tetapi kendali tetap terletak pada CPU. Selanjutnya pada interupsi terdapat pembagian kelas sinyal sebagai berikut

                  Program, yaitu interupsi yang dibangkitkan dengan beberapa kondisi yang terjadi pada hasil eksekusi program. Contohnya: arimatika overflow, pembagian nol, operasi ilegal.

      Timer, adalah interupsi yang dibangkitkan karena pewaktuan internal (pewaktuan dalam prosesor). Sinyal ini memungkinkan sistem operasi menjalankan fungsi tertentu secara reguler. 

           I/O, sinyal interupsi yang dibangkitkan oleh modul I/O sehubungan pemberitahuan kondisi

error dan penyelesaian suatu operasi.

   Hardware failure, adalah interupsi yang dibangkitkan oleh kegagalan daya atau kesalahan paritas memori.


B.  Proses Interupsi

Adanya mekanisme interupsi, prosesor dapat digunakan untuk mengeksekusi instruksi– instruksi lain. Saat suatu modul telah selesai menjalankan tugasnya dan siap menerima tugas berikutnya maka modul ini akan mengirimkan permintaan interupsi ke prosesor. Kemudian prosesor akan menghentikan eksekusi yang dijalankannya untuk menghandel interupsi rutin. Setelah program interupsi selesai maka prosesor akan melanjutkan eksekusi programnya kembali. Saat sinyal interupsi diterima prosesor ada dua kemungkinan tindakan, yaitu interupsi diterima/ditangguhkan dan interupsi ditolak

Gambar 5.1 Proses Interupsi transfer of command


Gambar 5.2. diagram alir siklus eksekusi oleh prosesor dengan adanya fungsi interupsi



C.  Interupsi ganda (multiple interrupt)

Interupsi gaanda sering terjadi pada sistem operasi kompleks, misalnya suatu komputer akan menerima permintaan interupsi saat proses pencetakan dengan printer selesai, disamping itu dimungkinkan dari saluran komunikasi akan mengirimkan permintaan interupsisetiap kali

data tiba. Jika pada saat bersamaan terdapat banyak interupsi pada program yang dijalankan oleh CPU, maka reaksi prosesor atas sinyal interupsi yang diterimanya ada dua kemungkinan tindakan, yaitu interupsi diterima/ditangguhkan dan interupsi ditolak. Terdapat dua pendekatan Interupsi ganda yaitu 

1.      Pendekatan pengolahan interupsi berurutan / Sekuensial

Pendekatan interupsi ini dilakukan denolak atau tidak mengizinkan interupsi lain saat suatu interupsi ditangani prosesor. Setelah prosesor selesai menangani suatu interupsi maka interupsi lain baru di tangani. 

- Pengolahan interupsi bersarang yaitu mendefinisikan prioritas bagi interupsi

- Interrupt handler mengizinkan interupsi berprioritas lebih tinggi ditangani terlebih dahulu



Gambar 5.3. Multiple Interrupts – Sequential

 




Gambar 5.4. Multiple Interrupts – Nested


Pada kasus multiple interrupt dengan pendekatan pengolahan interupsi berurutan/ Sequential, maka ketika interupsi interupsi ditolak Apa yang dilakukan prosessor? Interupsi ditolak atau di-disable terjadi ketika processor mengabaikan interupsi berikutnya karena processor sedang memproses satu interupsi. Interupsi berikutnya ditunda (pending) dan dilakukan pengecekan setelah interupsi pertama diproses. Pada kondisi ini (Disable interrupts) Interupsi ditangani sesuai urutan kejadian. Sedangkan pada kasus multiple interrupt dengan pendekatan bersarang atau nested, maka ketika knterupsi interupsi diterima/ditangguhkan Apa yang dilakukan Prosessor? Prosesor menangguhkan eksekusi program yang dijalankan dan menyimpan konteksnya. Tindakan yang dilakukan processor adalah menyimpan alamat instruksi dan data lain yang relevan yang akan dieksekusi berikutnya. Prosesor menyetel program counter (PC) ke alamat awal routine interrupt handler.Pada kondisi ini interupsi dengan prioritas rendah dapat diinterupsi dengan interupsi yang memiliki prioritas lebih tinggi. Setelah interupsi dengan prioritas lebih tinggi selesai diproses maka program akan kembali menjalankan interupsi prioritas rendah.

Komentar

Postingan populer dari blog ini

PANDUAN INSTALASI MIKROTIK DI VIRTUALBOX

The combination looping for and compilation education with Java Language's

JavaPoint networking port socket server to Client (mulitserver dan multiclient)