Manajemen Input/Output

Prinsip Software I/O
Ide Dasar : mengorganisasikan software dalam beberapa layer dimana level bawah menyembunyikan akses/kepelikan hardware untuk level diatasnya. Level atas membuat interface yang baik ke user.

Tujuan Software I/O

  1. Konsep dalam desain software I/O.
  2. Penamaan yang seragam/Uniform Naming. Contoh : seluruh disks dapat dibuat dengan hirarki sistem file (menggunakan NPS).
  3. Penanganan kesalahan/Error Handling. Contoh : pertama controller, device driver, dst. Dan jika tidak bisa ditangani beri pesan.
  4. Synchronous (blocking) vs Asynchronous (Interrupt Driver) transfer.
  5. Sharable vs Dedicated Device. Contoh : disk untuk sharable dan printer untuk dedicated.

Interrupt Handler
Interrupt harus disembunyikan agar tidak terlihat rutin berikutnya. Device driver di blok saat perintah I/O diberikan dan menunggu interupsi. Ketika interupsi terjadi, prosedur penanganan interupsi bekerja agar device driver keluar dari state blocked.

Device Drivers
Seluruh kode device dependent terletak di device driver. Tiap device driver menangani satu tipe/satu kelas device. Tugas dari device driver untuk menerima permintaan abstrak dari software device independent diatasnya dan melakukan layanan sesuai permintaan/mengeksekusinya.

Setiap 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:

  1. Menerjemahkan perintah-perintah abstrak menjadi perintah-perintah konkret.
  2. Begitu telah dapat ditentukan perintah-perintah yang harus diberikan ke pengendali, device driver mulai menulis ke register-register pengendali peralatan.
  3. Setelah operasi selesai dilakukan peralatan, device driver memeriksa kesalahan-kesalahan yang terjadi.
  4. Jika semua berjalan baik, device driver melewatkan data ke perangkat lunak device independent.
  5. Device melaporkan informasi status sebagai pelaporan kesalahan ke pemanggil.

Device-Independent I/O Software
I/O device-independent adalah software I/O yang tak bergantung pada perangkat keras.

Fungsi dari software I/O device-independent yang biasa dilakukan:

  1. Interface seragam untuk seluruh device-driver.
  2. Penamaan device.
  3. Proteksi device.
  4. Memberi ukuran blok device agar bersifat device-independent.
  5. Melakukan Buffering.
  6. Alokasi penyimpanan pada blok devices.
  7. Alokasi dan pelepasan dedicated devices.
  8. Pelaporan kesalahan.

User-Space I/O Software
Sebagian besar software I/O berada di dalam sistem operasi yang di link dengan user program.
System call termasuk I/O, biasanya dalam bentuk prosedur (library procedures). Contoh : count = write(fd, buffer, nbytes)
I/O prosedur dengan level lebih tinggi. Contoh : printf (memformat output dahulu kemudian panggil write)
Yang tidak mempunyai library procedure. Contoh : spooling directory dan daemon (proses khusus) pada proses mencetak, transfer file, USENET.

Kata Kunci Manajemen I/O
Block-Oriented Device ( Perangkat Berorientasi Blok )
Yaitu perangkat berorientasi blok menyimpan informasi dan menukarkan (menerima/mengirim) informasi sebagai blok-blok berukuran tetap.
Character Stream Oriented Device ( Perangkat Berorientasi Aliran Karakter )
Yaitu perangkat yang mengantarkan atau menerima aliran karakter tanpa peduli membentuk sustu struktur blok.
Clock
Yaitu perangkat yang tidak termasuk dalam kategori block-oriented device dan character stream oriented device yang artinya tidak teralamati secara blok dan juga tidak menghasilkan atau menerima aliran karakter. Clock hanya menyebabkan interupsi pada interval-interval yang didefinisikan.
Memory-MappTebaled Screen
Yaitu perangkat yang tidak tergolong dalam kategori Block-Oriented device dan Character Stream Oriented device.
I/O Device Independence
Yaitu konsep dimana membuat perangkat lunak masukkan / keluaran yang tidak bergantung perangkat keras.
I/O Programmed ( Masukkan / Keluaran Terprogram ) / polling system
Yaitu perangakat masukkan atau keluaran yang dimana pada saat menangani permintaan, perangkat men-set bit status di register status perangkat. Perangkat tidak memberitahu ke pemproses saat tugas telah selesai dilakukan. Dan proses harus selalu memeriksa register status perangkat secara priodik dan melakukan tindakan berdasar status yang dibaca.
Interrupt Driven
Yaitu suatu teknik masukkan/keluaran dituntun interupsi yang mempunyai mekanisme kerja perangkat masukkan/keluaran untuk meningkatkan efesiensi pemproses.
DMA ( Direct Memory Access )
Yaitu perangkat masukkan atau keluaran yang dikendalikan oleh interupsi lebih efisien dibanding masukkan atau kleuaran terprogram, tapi masih memerlukan intervensi aktif pemproses untuk transfer data antara memory dan buffer perangkat masukkan atau keluaran.
Device Driver
Yaitu tempat kode perangkat ditempatkan, yang bertugas menerima permintaan abstrak perangkat lunak device-independent diatasnya dan melakukan layanan sesuai permintaan.
DMA Controller
Yaitu DMA yang mengatur pengiriman informasi atau mentransfer data yang diminta dari dan ke memori secara langsung tanpa melewati pemproses.
Intelegent Device
Yaitu perangkat masukkan atau keluaran yang berintelejen setelah pemproses mengendalikan perangkat tersebut secara langsung yang dimana dari perangkat yang sederhana dikendalikan oleh mikroprosessor menjadi perangkat yang berintelejen.
Uniform Naming ( Penamaan Yang seragam )
Yaitu salah satu masalah yang ada pada manajemen masukkan atau keluaran. Misalkan nama berkas atau perangkat adalah string atau integer, tidak bergantung pada perangkat sama sekali.
Asyncrhronous Transfer
Yaitu I/O yang dimana pemproses mulai teransfer dan mengabaikan untuk melakukan kerja lain sampai interupsi tiba.

Syncrhonous Transfer
Yaitu I/O yang dimana pemproses mulai transfer dan tidak mengabaikan kerja lain saat interupsi tiba. Program pemakai sangat lebih mudah ditulis jika operasi masukkan atau keluaran berorientasi blok. Setelah perintah read, program kemudian ditunda secara otomatis sampai data tersedia di buffer.
Sharable
Yaitu perangkat yang dapat dipakai bersama pada suatu saat contohnya disk.
Dedicated
Yaitu Perangkat yang hanya satu pemakai yang dibolehkan memakai pada suatu saat. Contohnya printer.
Interrupt Handler
Interupsi harus disembunyikan agar tidak terrlihat rutin berikutnya. Device driver di blocked saat perintah masukkan atau keluara diberikan dan menunggu interupsi. Ketika interupsi terjadi, procedure penanganan interupsi bekerja agar device driver keluar dari state blocked.
Reading Ahead atau anticipated input
Yaitu teknik dimana transfer masukkan dibuat ke buffer system, ketika transfer selesai proses memindahkan blok ke ruang pemakai dan segera meminta blok lain.
Line–at–a–time mode
Yaitu proses pemakai tidak perlu ditunda untuk masukkan atau keluaran kecuali proses secepatnya mengosongkan buffer ganda.
Byte–at–a–time mode
Yaitu buffer ganda tidak member keunggulan berarti atas buffer tunggal. Double buffering mengikuti model producer-consumer.

About falaq83jie

Suka yang Memacu adrenalin

Posted on July 18, 2010, in sistem operasi. Bookmark the permalink. Leave a comment.

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 )

Twitter picture

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

Facebook photo

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

Google+ photo

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

Connecting to %s

%d bloggers like this: