Tugas Pertemuan 2

Cara kerja sistem komputer berbasis interupsi

Pemrograman berbasis interupsi secara langsung didukung hampir seluruh CPU modern. Interupsi menyediakan cara otomatis menyimpan isi register local dan menjalankan kode khusus sebagai respon terhadap sebuah kejadian. Bahkan komputer yang paling dasar sekalipun mendukung interupsi hardware dan membolehkan pemrogram untuk menentukan kode yang akan di jalankan ketika terjadi sebuah kejadian.

Ketika CPU mendeteksi bahwa sebuah controller telah mengirimkan sebuah sinyal ke interrupt request line (membangkitkan sebuah interupsi), CPU kemudian menjawab interupsi tersebut (juga disebut menangkap interupsi)dengan menyimpan beberapa informasi mengenai state terkini CPU –contohnya nilai instruksi pointer, dan memanggil interrupt handler agar handler tersebut dapat melayani controller atau alat yang mengirim interupsi tersebut.

Pada umumnya, sebuah komputer dapat melaksanakan hanya satu instruksi komputer pada waktu yang sama. Tetapi dapat disela dengan mengambil giliran di mana program atau satuan instruksi itu dilaksanakan. Ini dikenal sebagai multitasking. mengijinkan pemakainya untuk menggunakan sejumlah istruksi berbeda pada waktu yang sama. Komputer yang hanya mengambil giliran instruksi deviace yang sudah siap. Tentu saja, komputer beroperasi pada kecepatan yang membuatnya tampak seolah-olah semua tugas pemakai dilakukan pada waktu yang sama.

Ketika sebuah interupsi diterima, hardware komputer secara otomatis menunda program apapun yang sedang dijalankan, menyimpan statusnya dan menjalankan kode komputer yang berhubungan dengan interrupsi yang terjadi sebelumnya. Dalam sistem operasi modern, interupsi ditangani oleh kernel sistem operasi. Interupsi bisa datang dari
hardware komputer atau program yang sedang jalan.Sistem operasi komputer ahli dalam penggunaan jeda kesempatan saat sedang bekerja pada saat user atau pemakai berfikir seolah-olah bersaman proses program satu dengan lainnya.

Bagaimana interupsi dikirimkan ke CPU itu sendiri adalah tergantung arsitektur tetapi pada kebanyakan arsitektur yang menyela diantarkan dalam modus khusus yang menghentikan terjadinya hal-hal lain dalam sistem. Seorang driver perangkat harus melakukan sesedikit mungkin dalam penanganan interupsi rutin sehingga kernel Linux dapat mengabaikan interupsi dan kembali ke apa yang dilakukannya sebelum itu terganggu. Device driver yang perlu melakukan banyak pekerjaan sebagai akibat dari menerima interupsi dapat menggunakan dasar kernel penangan atau tugas setengah antrian ke antrian rutinitas untuk dipanggil nanti.

Contohnya : pada saat kita memutar lagu di winamp dan memutar film di windows media player. Hal yang sebenarnya terjadi adalah lagu dan film itu terputus-putus, itu dikarenakan processor mendapatkan interupsi dari masing-masing aplikasi yang dijalankan. Namun, Interupsi itu sangat dan sangat begitu cepat, sehingga tidak terdeteksi oleh telinga kita.

Polling dan Vector interrupt dalam penanganan interupsi

Polling Interrupt

Polling perangkat biasanya berarti membaca register status sering kali sampai perubahan status perangkat untuk menunjukkan bahwa ia telah menyelesaikan permintaan. Sebagai device driver merupakan bagian dari kernel itu akan menjadi bencana jika seorang user melakukan jajak pendapat sebagai hal lain dalam kernel akan berjalan hingga perangkat telah menyelesaikan permintaan. Sebaliknya device driver polling sistem menggunakan timer untuk memiliki panggilan kernel rutin dalam driver perangkat pada beberapa waktu kemudian. Timer ini akan rutin memeriksa status dari perintah persis bagaimana Linux driver floppy bekerja. Polling menggunakan timer adalah perkiraan terbaik, yang jauh lebih efisien penggunaan metoda potong.

Vector Interrupt

Vektor interupsi adalah alamat memori dari pengendali interupsi, atau suatu indeks ke dalam sebuah array disebut tabel vektor interupsi atau meja dispatch. Interrupt vector tables contain the memory addresses of interrupt handlers.
Interrupt vektor tabel berisi alamat memori penangan interrupt. Akan tetapi, interrupt vector memiliki hambatan karena pada kenyataannya, komputer yang ada memiliki device (dan interrupt handler ) yang lebih banyak dibandingkan dengan jumlah alamat pada interrupt vector. Karena itulah, digunakanlah teknik interrupt chaining dimana setiap elemen dari interrupt vector menunjuk / merujuk pada elemen pertama dari sebuah daftar interrupt handler. Dengan teknik ini, overhead yang dihasilkan oleh besarnya ukuran tabel dan inefisiensi dari penggunaan sebuah interrupt handler (fitur pada CPU yang telah disebutkan sebelumnya) dapat dikurangi, sehingga keduanya menjadi kurang lebih seimbang.

Uraian mengenai hirarki memory, mulai level paling atas sampai paling bawah

Hierarki Memori atau Memory Hierarchy dalam arsitektur komputer adalah sebuah pedoman yang dilakukan oleh para perancang demi menyetarakan kapasitas, waktu akses, dan harga memori untuk tiap bitnya. Secara umum, hierarki memori terdapat dua macam yakni hierarki memori tradisional dan hierarki memori kontemporer.

gambar : hierarki memory tradisioanal

gambar : hierarki memory kontemporer

Penjelasan gambar:
1. Semakin kebawah makin lambat.
2. semakin keatas semakin cepat dan harga semakin mahal.

Penjelasan hierarki memory

1. Register Prosesor
Register prosesor terletak di dalam prosesor. Seringkali 32 atau 64-bit. Setiap register biasanya memegang kata data (seringkali 32 atau 64-bit). Instruksi CPU menginstruksikan unit aritmatika dan logika untuk melakukan berbagai perhitungan atau operasi lain pada data ini. Register secara teknis antara tercepat dari semua bentuk penyimpanan data komputer.

2. Memory Cache
Memory cache ini terbagi menjadi beberapa level, yaitu:Level-1, Level-2, Level-3, dan seterusnya.
a. Level-1
Memory level ini mempunyai ukuran paling kecil di antara semua cache, hanya sekitar puluhan kilobyte saja. Namun Kecepatannya paling cepat di antara semua cache.
b. Level-2
Memory level ini mempunyai ukuran yang lebih besar dibandingkan dengan cache level-1, yakni sekitar 64 kilobyte, 256 kilobyte, 512 kilobyte, 1024 kilobyte, atau lebih besar. Namun, kecepatannya berbanding terbalik dengan level-1, dengan nilai latency kira-kira 2 kali hingga 10 kali. Cache level-2 ini bersifat opsional. Beberapa prosesor murah dan prosesor sebelum Intel Pentium tidak memiliki cache level-2.
c. Level-3
Memory level ini mempunyai ukuran yang lebih besar dibandingkan dengan cache level-2, yakni sekitar beberapa megabyte. Namun kecepatannya lebih lambat jika dibandingkan dengan cache-1 dan cache-2.

3. Memory utama
memory Utama memiliki akses yang jauh lebih lambat dibandingkan dengan memori cache, dengan waktu akses hingga beberapa ratus siklus CPU, tapi ukurannya mencapai satuan gigabyte. Waktu akses pun kadang-kadang tidak seragam, khususnya dalam kasus mesin-mesin Non-uniform memory access (NUMA).

4. Cache Disk
Cache Disk ini terdapat pada hierarki memory kontemporer.

5. Cakram Magnetis
Cakram Magnetis merupakan piranti penyimpanan sekunder yang paling banyak dijumpai pada sistem komputer modern. Pada saat disk digunakan, motor drive berputar dengan kecepatan yang sangat tinggi. Ada sebuah read−write head yang ditempatkan di atas permukaan piringan tersebut. Permukaan disk terbagi atas beberapa track yang masih terbagi lagi menjadi beberapa sektor. Cakram fixed−head memiliki satu head untuk tiap−tiap track, sedangkan cakram moving−head (atau sering dikenal dengan nama cakram keras ) hanya memiliki satu head yang harus dipindah−pindahkan untuk mengakses dari satu track ke track yang lainnya.

6. Tape Magnetis dan Cakram Optis
Pada hierarki memory tradisional hanya terdapat Tape Magnetis pada level bawah. Namun pada kontemporer, dibagi menjadi 2 yaitu tape magnetis dan cakram optis. Contoh Cakram Optis yaitu : DVD, DVD-RW, CD-R, CD-ROM, CD-RW, dan Cakram Blu-ray.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: