Hardware I/O

4
I/O HARDWARE Piranti I/O (Device) Piranti-piranti I/O yang terkoneksi ke komputer memiliki karakterisitk khas sesuai dengan fungsi dan teknologi yang digunakannya. Piranti I/O dapat berupa komponen elektris maupun mekanik. Contoh piranti I/O seperti monitor, keyboard, mouse, printer, scanner dan lain-lain. Device Controller (Adapter) Supaya piranti-piranti I/O dapat dikontrol dan berkomunikasi dengan sistem komputer, maka harus ada device controller yang berfungsi sebagai antarmuka antara piranti I/O dengan sistem internal komputer. Device controller ini merupakan sirkuit digital yang berfungsi mengontrol kerja komponen mekanik ataupun elektris lainnya dari piranti I/O. Bus I/O Bus I/O terdiri atas bus data, alamat dan kontrol yang berfungsi menghubungkan device controller dengan elemen internal komputer seperti processor dan memory. Selain itu terdapat juga bus I/O lanjutan atau ekspansi seperti bus parallel, serial, PS2 yang digunakan untuk berkomunikasi dengan piranti I/O yang bersifat mudah dipindah-pindahkan dan umumnya terletak di luar kotak komputer. TEKNIK I/O Programmed I/O atau SPooling Processor bertanggung jawab atas pemeriksaan selesainya transfer data yang dilakukan oleh device controller. Jika data sudah siap, maka processor juga bertanggung jawab atas pemindahan data dari dan ke memory utama. Kebanyakan pemakaian piranti I/O bersifat eksklusif, yaitu hanya dapat melayani satu tugas pada suatu waktu. Mekanisme spooling pada sistem multiprogramming: Setiap proses akan tetap mengirim data ke piranti I/O sehingga prosesnya sendiri tidak dalam status blocked. Tapi karena piranti I/O sibuk, maka kernel I/O akan menampung dulu dan menempatkan dalam antrian. Sekalipun program aplikasi yang mengirim data output telah selesai, data yang di-spooling oleh kernel I/O tidak akan hilang.

description

deskripsi tentang Hardware I/O

Transcript of Hardware I/O

Page 1: Hardware I/O

I/O HARDWARE

Piranti I/O (Device)Piranti-piranti I/O yang terkoneksi ke komputer memiliki karakterisitk khas sesuai dengan fungsi dan teknologi yang digunakannya. Piranti I/O dapat berupa komponen elektris maupun mekanik. Contoh piranti I/O seperti monitor, keyboard, mouse, printer, scanner dan lain-lain.

Device Controller (Adapter)Supaya piranti-piranti I/O dapat dikontrol dan berkomunikasi dengan sistem komputer, maka harus ada device controller yang berfungsi sebagai antarmuka antara piranti I/O dengan sistem internal komputer. Device controller ini merupakan sirkuit digital yang berfungsi mengontrol kerja komponen mekanik ataupun elektris lainnya dari piranti I/O.

Bus I/OBus I/O terdiri atas bus data, alamat dan kontrol yang berfungsi menghubungkan device controller dengan elemen internal komputer seperti processor dan memory. Selain itu terdapat juga bus I/O lanjutan atau ekspansi seperti bus parallel, serial, PS2 yang digunakan untuk berkomunikasi dengan piranti I/O yang bersifat mudah dipindah-pindahkan dan umumnya terletak di luar kotak komputer.

TEKNIK I/O

Programmed I/O atau SPooling Processor bertanggung jawab atas pemeriksaan selesainya transfer data yang dilakukan oleh

device controller. Jika data sudah siap, maka processor juga bertanggung jawab atas pemindahan data dari dan

ke memory utama.Kebanyakan pemakaian piranti I/O bersifat eksklusif, yaitu hanya dapat melayani satu tugas pada suatu waktu.Mekanisme spooling pada sistem multiprogramming:

Setiap proses akan tetap mengirim data ke piranti I/O sehingga prosesnya sendiri tidak dalam status blocked. Tapi karena piranti I/O sibuk, maka kernel I/O akan menampung dulu dan menempatkan dalam antrian.

Sekalipun program aplikasi yang mengirim data output telah selesai, data yang di-spooling oleh kernel I/O tidak akan hilang.

Interrupt - Driven I/O Procesor hanya bertanggung jawab atas pemindahan data ke atau dari memory utama (hanya

memberikan instruksi transfer data). Device controller yang akan memberikan sinyal interupsi jika data sudah tersedia untuk

disalinkan ke memory utama.

DMA (Direct Memory Access) Processor dibebaskan dari pengontrolan transfer data I/O. Sebagai gantinya, diperlukan tambahan perangkat keras DMA controller yang memiliki

kendali atas bus internal dan jalur ke memory utama.

Page 2: Hardware I/O

Pada saat CPU ingin membaca/tulis, CPU mengirimkan perintah ke modul DMA yang berisi :1. Read/Write yang diminta

2. Alamat perangkat I/O yang dilibatkan

3. Lokasi awal blok memori data

4. Jumlah data yang akan ditransfer.

5. CPU melanjutkan pekerjaan lainnya

6. DMA controller memindahkan seluruh data, word per word secara langsung ke/dari memori tanpa harus melalui CPU.

7. Setelah selesai, DMA controller mengirimkan signal interrupt ke CPU

8. CPU hanya dilibatkan pada awal dan akhir pemindahan saja.

Konfigurasi pada DMA1. Konfigurasi I

Hanya menggunakan single bus DMA dan modul I/O terpisah Setiap transfer harus mengakses bus 2 kali

2. Konfigurasi II Hanya menggunakan single bus DMA controller dan modul I/O terintegrasi Satu DMA controller dapat mengangani lebih dari 1 modu I/O Setiap transfer hanya perlu mengakses bus satu kali saja

3. Konfigurasi III Digunakan bus I/O secara terpisah Semua modul I/O cukup dilayani dengan sebuah DMA Setiap transfer hanya perlu mengakses bus satu kali saja

I/O SOFTWARE

Kernel I/O subsystems.

Kernel menyediakan banyak service yang berhubungan dengan I/O. Pada bagian ini, kita akan mendeskripsikan beberapa service yang disediakan oleh kernel I/O subsystem, dan kita akan membahas bagaimana caranya membuat infrastruktur hardware dan device-driver. Service yang akan kita bahas adalah I/O scheduling, buffering, caching, pooling, reservasi device, error handling.

Interupsi Handler

Interupsi adalah suatu peristiwa yang menyebabkan eksekusi satu program ditunda dan program lain yang dieksekusi. Interrupt adalah sinyal dari peralatan luar dan permintaan dari

Page 3: Hardware I/O

program untuk melaksanakan suatu tugas khusus. Jika interrupt terjadi, maka program dihentikan dahulu untuk menjalankan rutin interrupt .Ketika program yang sedang berjalan tadi dihentikan, prosesor menyimpan nilai register yang berisi alamat program ke stack, dan mulai menjalankan rutin interupt.

Jenis Interupt : Interupt Software

Interupt yang disebabkan oleh software yang sering disebut dengan system call. Interupt Hardware

Interupt yang disebabkan oleh adanya akses pada perangkat keras seperti penekanan tombol keyboard atau menggerakkan mouse

Device DriverSetiap device driver menangani satu tipe peralatan. Device driver bertugas menerima permintaan abstrak perangkat lunak device independent di atasnya dan melakukan layanan sesuai permintaan itu.

Mekanisme kerja device driver : Menerjemahkan perintah-perintah abstrak menjadi perintah-perintah konkret. Begitu telah dapat ditentukan perintah-perintah yang harus diberikan ke pengendali,

device driver mulai menulis ke register-register pengendali peralatan. Setelah operasi selesai dilakukan peralatan,device driver memeriksa kesalahan-

kesalahanyang terjadi. Jika semua berjalan baik, device drive rmelewatkan data ke perangkat lunak device

independent. Device melaporkan informasi status sebagai pelaporan kesalahan ke pemanggil.

Pustaka I/O aplikasi

Mengimplementasikan pustaka pengaksesan I/O atau API (Application Programming Interface) bagi aplikasi untuk melakukan operasi I/O. Memudahkan user karena pengaksesan ke berbagai macam piranti I/O dengan menggunakan operasi yang sama.