Sunday, March 8, 2015

INTERUPSI PADA KOMPUTER



Abstrak   :  Interupsi  adalah suatu permintaan khusus untuk melakukan sesuatu,dan akan menghentikan dahulu apa yang sedang dikerjakan, dan baru di lanjutkan setelah selesai. Banyak yang bisa menjadi penyebab interupsi seperti timer, hardware error, I/O, Program dan lainnya. Tujuan interupsi yaitu agar pengeksekusian program pada CPU berjalan lancar serta efisien.


I.                   PENDAHULUAN
Dizaman sekarang ini kita ketahui bersama bahwa banyak sekali teknologi teknologi yang sudah maju, namun di balik kenyataan itu semua kita hanya mengatahui beberapa dari teknologi tersebut secara rinci seperti sejarahnya, fungsinya, serta cara kerjanya secara spesifik. Salah satu teknologi yang akan saya bahas dalam paper ini adalah termasuk dalam teknologi komputer dan lebih tepatnya yaitu Interupsi dalam komputer.
Tanpa proses interupsi yang ada dalam komputer, kita mungkin tidak dapat menikmati canggihnya teknologi komputer seperti yang dapat kita nikmati saat ini, program akan berjalan lambat dan tidak tau mana yang lebih menjadi prioritas untuk di jalankan. Oleh karena pentingnya sebuah sistem yang bernama interupsi itu lah saya membuat paper dan mengambil judul Enable dan Disable Interupsi.
II.                LANDASAN TEORI
Seperti yang kita ketahui bahwa interupsi sangat lah penting dalam suatu teknologi komputer, interupsi juga banyak digunakan pada banyak sistem untuk menjaga keteraturan program yang sedang berjalan. Contohnya saja interupsi pada sebuah program assembly, Interupsi lah yang menjadi inti dari program assembly tersebut. Interupsi memungkinkan sebuah program assembly untuk meminta komputer melakukan proses sesuai dengan nilai register yang dipergunakan sebagai dasar interupsinya.



III.             PEMBAHASAN
III.I               PENGERTIAN
Interupsi atau interrupt adalah suatu permintaan khusus pada mikroprocessor untuk melakukan sesuatu, jika terjadi interupsi maka komputer akan menghentikan dahulu apa yang sedang dikerjakan dan melakukan apa yang di minta oleh yang menginterupsi, setelah selesai maka aliran program akan kembali ke pernyataan program sebelum terjadinya interupsi. Interupsi merupakan sub rutin yang sudah tersedia dalam memori komputer.
Pada IBM PC dan kompatibelnya disediakan 256 buah interupsi yang diberi nomor 0 s/d 255. Nomor interupsi 0 s/d 1Fh disediakan oleh ROM BIOS yaitu suatu IC di dalam komputer yang mengatur operasi dasar komputer. Jadi jika terjadi interupsi dengan nomor 0 s/d 1Fh maka secara default komputer akan beralih ke ROM BIOS dan melaksanakan program yang terdapat disana. Program yang melayani suatu interupsi dinamakan Interrupt Handler, dan hanya dijalankan jika terjadi sesuatu kejadian khusus (event). Kejadian ini bisa berupa timer yang mengalami overflow, penerimaan karakter melalui port serial, mengirimkan karakter melalui port serial, atau salah satu dari dua kejadian eksternal. Setiap interrupt akan mengekseskusi interrupt handlernya masing masing berdasarkan nomornya. Sedangkan alamat dari masing masing interrupt handler tercatat di memori dalam bentuk array yang besar elemennya masing masing 4 byte. Keempat byte ini dibagi lagi yaitu 2 byte pertama berisi kode offset sedangkan 2 byte berikutnya berisi kode segmen dari alamat interrupt handler yang bersangkutan. Jadi besarnya array itu adalah 256 elemen dengan ukuran elemen masing masing 4 byte. Total keseluruhan memori yang di pakai adalah sebesar 1024 byte (256x4=1024) atau 1 KB dan disimpan dalam lokasi memori absolut 0000h sampai 3FFh. Array sebesar 1 KB ini disebut interrupt vector table. Nilai nilai yang terkandung pada interrupt vector table ini tidak akan sama di satu komputer dengan yang lainnya.
Fungsi interupsi adalah sebagai berikut :
1.      Interupsi memindahkan pengendalian kepada interrupt service routine melalui interrupt vektor yang berisi alamat dari semua service routine.
2.      Arsitektur interrupt harus menyimpan alamat intruksi yang di interrupt.
3.      Interrupt yang datang berikutnya dibatalkan ketika interrupt lain sedang diproses untuk mencegah hilangnya suatu interrupt.
4.      Trap adalah software generated interrupt yang disebabkan oleh kesalahan atau karena permintaan user.
5.      Suatu sistem operasi dikendalikan oleh interrupt.

Tujuan Interupsi :
·         Secara umum untuk manajemen pengeksekusian routine intruksi agar efektif dan efisien antar CPU dan modul – modul I/O maupun memori.
·         Setiap komponen komputer dapat menjalankan tugasnya secara bersamaan, tetapi kendali terletak pada CPU disamping itu kecepatan eksekusi masing – masing modul berbeda.
·         Dapat sebagai sinkronisasi kerja antar modul.

III.II   JENIS INTERUPSI
Internal HW interruptions :
·         Ditimbulkan/digenerasi oleh peristiwa tertentu yang terjadi pada waktu/selama eksekusi program
·         Diatur oleh HW dan tidak dapat dirubah
·         Contoh : tipe interrupt untuk counter clock internal; HW call interrupt ini untuk memaintance “time to date”
External HW interrupstion
·         Ditimbulkan/digenerasi oleh devais peripheral, seperti keyboard, printers, mouse, dsb.
·         Biasa juga ditimbulkan/digenerasi oleh Co-processor
·         Tidak mungkin mendeaktivekan
·         Tidak dikirim langsung ke CPU, melainkan ke IC yang memiliki fungsi untuk menghandle secara eksklusive interrupts ini.
Software interruption :
·         Diaktifkan langsung oleh assembler melalui sejumlah interupsi yang di harapkan dengan intruksi INT
·         Terdapat 2 jenis : DOS interrupstions & BIOS interruptions. Perbedaan nya, DOS interruptions lebih mudah digunakan, namun lebih lambat, karena interruptions jenis ini menggunakan BIOS, BIOS interruptions lebih cepat, namun banyak kerugiannya karena BIOS bagian HW dan HW-specific. Pemilihan interrupt tergantung pada karakteristik yang akan kita berikan pada program : SPEED -> BIOS interruptions . PORTABILITY -> DOS interruptions.
Ada 2 macam Software Interrupt :
1.      Vektor Interrupt ROM BIOS
Interrupt 00h-1Fh (0-31) adalah interrupt BIOS dan standar di semua komputer baik yang menggunakan sistem operasi DOS atau bukan. Lokasi interrupt vector tabkenya ada di alamat absolut 0000h-007Fh.
Interrupt BIOS dibawah ini telah di pastikan kegunaannya oleh sistem untuk keperluan khusus tidak boleh di ubah oleh program seperti lainnya.
DEVIDE BY ZERO Jika terjadi pembagian dengan nol maka proses akan segera dihentikan.
SINGLE STEP untuk melaksanakan/mengeksekusi intruksi satu persatu.
NMI pelayanan terhadap NMI (Non Maskable Interrupt yaitu interupsi yang tak dapat dicegah.
BREAK POINT Jika suatu program menyebabkan overflow flag menjadi 1, interrupt ini akan melayani pencegahannya dan memberi tanda error.
2.      Interrupt DOS
Interrupt 20h-FFh (32-255) adalah interrupt DOS, dan hanya ada pada komputer yang menggunakan sistem operasi DOS dan interrupt handlernya di load ke memori oleh DOS pada saat DOS digunakan. Lokasi interrupt vector tablenya ada di alamat absolut 07Fh-3FFh
·         Vector interrupt ROM BIOS
Definisi : interrupt yang disediakan oleh BIOS (int 0 sampai int 1Fh)
NO
Service
Fungsi
INT 5
-
Tombol print screen
INT 9
-
Saat tombol keyboard lain ditekan, KB mengirim sandi lacak ke CPU bukan ke karakter ASCII
INT 10
-
Mengubah mode video pada register AL 0-6 > layar grafik, 7 > layar monochrom.
Register input : AH=00, AL=nomor mode video.
Contoh: Mov AL,5 ; Mov AH,0 ; Int 10

1
Register input : AH=01h, CH=awal garis bentuk cursor, CL=akhir garis bentuk cursor.

2
Mengubah posisi kursor
Register input : AH=02h, BH=nomor halaman
tampilan, DH nomor baris (dimulai 00),
DL=nomor kolom (dimulai 00)

3
Register input : AH=03h, BH=nomor halaman
tampilan
Register output : CH=awal garis bentuk
cursor, CL=akhir garis bentuk cursor , DH
nomor baris (dimulai 00), DL=nomor kolom
(dimulai 00)

6
Register input : AH=06h, AL=jumlah baris
untuk digulung, BH=atribut untuk baris
kosong, CH,CL=koordinat kiri atas window,
DH,DL=koordinat kanan bawah

7
Scroll down window
Register input sama dengan service 6

8
Melihat nilai karakter ASCII yang ada di layar.
Cara :
• Atur posisi cursor dengan fungsi 3
• Atur BH dengan nomor halaman 0
• Isi AH dengan 08h
• Jalankan int 10
• AL =Nilai ASCII, AH=atribut
Dsb .
·         Interrupt DOS
Definisi : Interrupt yang disediakan oleh DOS (Int di atas 1Fh)
No
Service
Fungsi
INT 20
-
Menghentikan proses komputer terhadap suatu program COM
INT 21
01
Membaca karakter dari keyboard dan menampilkan di layar.
Register input : AH=01h
Register Output : AL=kode ASCII

02
Mencetak karakter ke layar.
Register input : AH=02

05
Output ke printer
Register input : AH=05
Register output : DL

09
Mencetak string ke layar
Register input : AH=09
22h
-
Terminate code
23h
-
Ctrl-Break code
24h
-
Critical Error Handler
25h
-
Absolute Disk Read

Penyebab terjadinya interupsi :
1.      Program
Diakibatkan adanya beberapa kondisi yang terjadi, hasil dari suatu eksekusi.
Contoh: arithmetic overflow, devision by zero, pengeksekusian secara illegal, penggunaan memori yang berlebihan.
2.      Timer
Disebabkan oleh timer di dalam prosesor. Hal ini memungkinkan sistem operasi menjalankan fungsi-fungsi tertentu secara regular.           
3.      I/O
Disebabkan oleh I/O Controller, baik sebagai tanda bahwa suatu operasi telah selesai, maupun memberi tanda adanya kondisi error. Interrupt I/O ada dua macam, interrupt pendek dan interrupt panjang.
4.      Hardware Failure
Disebabkan olch kesalahan hardware, scperti power failure (kegagalan daya) atau memory parity error.
5.      Menangani exception, Exception adalah suatu kondisi dimana terjadi sesuatu, atau dari sebuah operasi didapatkan hasil tertentu yang dianggap khusus sehingga harus mendapat perhatian lebih, contohnya, pembagian dengan nol, pengaksesan alamat memori yang restricted atau tidak valid, dll.
6.      Mengatur virtual memory paging.
7.      Menangani perangkat lunak interupsi.
8.      Menangani alur kontrol kernel.
Tindak lanjut interupsi :
1.        Penata interupsi / interrupt handler
jika terjadi interupsi, maka kendali prosesor diserahkan ke bagian penata interupsi pada sistem operasi, maka penata interupsi inilah yang melaksanakan interupsi.
a.         Instruksi yang sedang diolah oleh prosesor dibiarkan sampai selesai program.
b.         Penata interupsi merekam semua informasi proses ke dalam blok kendali proses.
c.         Penata interupsi mengidentifikasi jenis dan asal interupsi.
d.        Penata interupsi mengambil tindakan sesuai dengan yang dimaksud interupsi.
e.         Penata interupsi mempersiapkan segala sesuatu untuk pelanjutan proses yang diinterupsi.

2.        Penata keliru/Error handler
Yaitu interupsi karena kekeliruan pada pengolahan proses dan bagian pada sistem operasi yang menata kegiatan akibat kekeliruan adalah penata keliru.
a.         Pemulihan, komputer telah dilengkapi dengan sandi penemuan dan pemulihan kekeliruan, contohnya telah dilengkapi dengan sandi Hamming sehingga ketika menemukan kekeliruan sandi akan mengoreksi kekeliruan itu, proses pulih ke bentuk semula sebelum terjadi kekeliruan.
b.         Pengulangan, mengatur agar proses yang membangkitkan interupsi keliru dikerjakan ulang, jika kekeliruan dapat diatasi maka proses akan berlangsung seperti biasa, jika tidak teratasi maka interupsi akan menempuh tindak lanjut keluar dari proses.
c.         Keluar dari proses, penata keliru menyiapkan tampilan berita keliru dari monitor, setelah itu prosesor keluar dari proses, ini adalah tindakan terakhir jika tidak dapat menolong proses yang keliru tersebut.

IV.             KESIMPULAN
Interupsi atau interrupt adalah suatu permintaan khusus pada mikroprocessor untuk melakukan sesuatu, jika terjadi interupsi maka komputer akan menghentikan dahulu apa yang sedang dikerjakan dan melakukan apa yang di minta oleh yang menginterupsi, setelah selesai maka aliran program akan kembali ke pernyataan program sebelum terjadinya interupsi.
Fungsi interupsi yaitu mekanisme penghentian atau pengalihan pengolahan intruksi dalam CPU kepada routine interupsi dengan tujuan secara umum yaitu untuk manajemen pengeksekusian routine intruksi agar efektif dan efisien antar CPU dan modul – modul I/O maupun memori.
Jenis interupsi yaitu Internal HW interruptions, External HW interruptions, dan Software Interruptions. Software Interruptions di bagi menjadi 2 yaitu Vector Interrupt ROM BIOS dan Interrupt DOS. Penyebab terjadi interupsi seperti Program, Hardware Failure, I/O, Timer, menangani Exception, Mengatur virtual memory, Menangani perangkat lunak interupsi, Menangani alur kontrol kernel.

V.                DAFTAR PUSTAKA



Sumber :http://gudangmakalahkuliah.blogspot.com/2013/12/interupsi-pada-komputer.html

0 comments:

Post a Comment

Followers

  © Blogger template 'A Click Apart' by Ourblogtemplates.com 2008

Back to TOP