Thursday, March 31, 2016

Fungsi Interupsi Pada CPU

Tags #Pendidikan #komputer #Informatika #CPU

Hello semuanya, ^_^

Pada hari ini, saya akan membagikan sebuah artikel yang membahas tentang kinerja pada CPU. tapi sebelumnya, apakah kalian tahu, apa yang dimaksud dengan CPU?

CPU atau Central Processing Unit adalah Pusat pengolah data-data yang kita inputkan ke dalam komputer maupun data yang dioutputkan oleh komputer. Atau pada dasarnya, CPU lebih mudah dipahami dengan istilah "otak" dari sebuah komputer. Yap, tentu saja, CPU pasti berperan penting dalam sebuah komputer.

Akan tetapi, dalam sebuah proses, pasti terdapat proses-proses lainya di dalam komputer itu sendiri. Oleh karena itu, saya akan membahas salah satu proses tersebut, yaitu fungsi interupsi.

Fungsi interupsi adalah suatu permintaan khusus pada microprocessor untuk melakukan sesuatu, jika terjadi interupsi maka komputer akan menghentikan dahulu apa yang sedang dikerjakan dan melakukan apa yang diminta oleh yang menginterupsi. Selain itu, fungsi interupsi bisa diartikan juga sebagai mekanisme penghentian atau pengalihan pengolahan instruksi dalam CPU kepada routine interupsi. Hampir semua modul (memori dan I/0) memiliki mekanisme yang dapat menginterupsi kerja CPU. 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.

Bukan hanya satu fungsi interupsi, tetapi fungsi interupsi ini terbagi menjadi 2 jenis, yaitu sebagai berikut.

A. Internal HW interruptions :
1) Ditimbulkan/digenerasi oleh peristiwa tertentu yang terjadi pada waktu/selama eksekusi program.
2) Diatur oleh HW dan tidak dapat dirubah.
3) Contoh : tipe interrupt untuk counter clock internal; HW call interrupt ini untuk memaintance “time to date.”

B. External HW interrupstion
1) Ditimbulkan/digenerasi oleh devais peripheral, seperti keyboard, printers, mouse, dsb.
2) Biasa juga ditimbulkan/digenerasi oleh Co-processor
3) Tidak mungkin mendeaktivekan
4) Tidak dikirim langsung ke CPU, melainkan ke IC yang memiliki fungsi untuk menghandle secara eksklusive interrupts ini.

Dalam suatu proses, pasti proses tersebut memiliki fungsi. Akan tetapi, fungsi yang saya maksud di sini adalah kegunaan dari fungsi interupsi ini sendiri. Fungsinya fungsi interupsi (:v) 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.

Penyebab terjadinya interupsi adalah sebagai berikut.

a) Program, diakibatkan adanya beberapa kondisi yang terjadi, hasil dari suatu eksekusi. Contoh : arithmetic overflow, devision by zero, pengeksekusian secara illegal, penggunaan memori yang berlebihan.
b) Timer, disebabkan oleh timer di dalam prosesor. Hal ini memungkinkan sistem operasi menjalankan fungsi-fungsi tertentu secara regular.
c) 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.
d) Hardware Failure, disebabkan oleh kesalahan hardware, seperti power failure (kegagalan daya) atau memory parity error.
e) 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, dan lain-lain.
f) Mengatur virtual memory paging.
g) Menangani perangkat lunak interupsi.
h) Menangani alur kontrol kernel.

Tindak lanjut interupsi adalah :

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.

Jadi, apakah kalian sudah mengerti tentang fungsi interupsi? Ya semoga saja mengerti ya, hehehehe....:D

Sekian postingan saya hari ini, semoga bermanfaat bagi kalian semua yang membaca ya, sampai jumpa di postingan saya yang selanjutnya yaa, ^_^.

No comments:

Post a Comment