I/O adalah suatu mekanisme pengiriman data secara bertahap dan terus
menerus melalui suatu aliran data dari proses ke peranti (begitu pula
sebaliknya). Fungsi :Fungsi i/o Pada dasarnya adalah mengimplementasikan
algoritma I/O pada level aplikasi. Hal ini dikarenakan kode aplikasi
sangat fleksible, dan bugs aplikasi tidak mudah menyebabkan sebuah
sistem crash. Pada dasarnya, tugas utama komputer adalah processing
dan I/O (Input danOutput). Bahkan, sebagian besar waktunya digunakan
untuk mengolah I/O sedangkan processing hanya bersifat insidental. Jadi,
pada konteks I/O, peranan sistem operasiadalah mengatur dan mengontrol
perangkat I/O dan operasi I/O.Perangkat I/O sangat bervariasi. Oleh
karena itu, bagaimana cara mengontrol perangkat-perangkat tersebut
mendapat perhatian besar dalam organisasi komputer.Bayangkan, perangkat
I/O yang sangat banyak jumlahnya dan setiap perangkat memilikifungsi dan
kecepatan sendiri-sendiri, tentunya memerlukan metode yang berbeda
pula.Oleh karena itu, dikenal klasifikasi perangkat I/O menjadi
perangkat blok dan perangkatkarakter, walaupun ada perangkat yang tidak
termasuk ke dalam satupun dari keduagolongan ini.Perangkat terhubung ke
komputer melalui port, diatur oleh device controller dan berkomunikasi
dengan prosesor dan perangkat lain melalui bus. Perangkat berkomunikasi
dengan prosesor melalui dua pendekatan yaitu memory mapped daninstruksi
I/O langsung.
I/O system terdiri dari beberapa again penting yaitu:
a. I/O Hardware
b. Application I/O Interface
c. Kernel I/O Subsystem
d. I/O Requests to Hardware Operations
e. Streams
f. PerformanceA. I/O HardwareSecara umum, I/O Hardware terdapat beberapa jenis seperti device penyimpanan
(disk,tape),transmission
device (network card, modem), dan human-interface device (screen,
keyboard, mouse). Device tersebut dikendalikan oleh instruksi I/O.
Alamat-alamat yang dimiliki
oleh device akan digunakan oleh direct I/O instruction dan memory-mapped I/O.
Beberapa konsep yang umum digunakan ialah port, bus (daisy chain/ shared direct access), dan controller (host adapter).
Port adalah koneksi yang digunakan oleh device untuk berkomunikasi dengan mesin.
Bus adalah koneksi yang menghubungkan beberapa device menggunakan kabel-kabel.
Controller adalah alat-alat elektronik yang berfungsi untuk mengoperasikan port, bus, dan device.
B. Application I/O InterfaceMerupakan
suatu mekanisme untuk mempermudah pengaksesan, sehingga sistem operasi
melakukan standarisasi cara pengaksesan peralatan I/O. Contoh : suatu
aplikasi
ingin membuk data yang ada dalam suatu disk, aplikasi tersebut harus dapat
membedakan
jenis disk apa yang akan diaksesnya. Interface aplikasi I/O melibatkan
abstraksi, enkapsulasi, dan software layering. Device driver
mengenkapsulasi tiap-tiap peralatan I/O ke dalam masing-masing 1 kelas
yang umum (interface standar). Tujuan dari adanya lapisan device driver
ini adalah untuk menyembunyikan perbedaan-perbedaan yang ada pada
device controller dari subsistem I/O pada kernel. Karena hal ini,
subsistem I/O dapat bersifat independen dari hardware.
Komponen Input/Output
Komponen
input/ouput merupakan suatu rangkaian masukan atau keluaran dengan
berbagai macam bentuk dan karakter yang berbeda-beda serta bekerja
dengan level tegangan yang bervariasi. Komponen input/ouput agar dapat
bekerja dan berhubungan dengan mikroprosesor dilengkapi dengan rangkaian
antar muka (interface). Rangkaian interface dapat diartikan sebagai
rangkaian penghubung yang menghubungkan antara komponen yang satu dengan
komponen yang lainnya, sehingga dapat dilakukan transfer data antara
komponen-komponen tersebut. Ini dapat dibangun atau
dirancang dengan rangkaian perangkat keras dan perangkat
lunak (program).
Dalam proses interfacing antara sistem
mikroprosesor dengan piranti luar dibutuhkan beberapa fungsi seperti,
data buffering, address decoding, command decoding, status decoding, dan
sistem control dan timing. Semua ini dibutuhkan untuk
mensinkronikasikan kerja sistem supaya sinergi. Karena tanpa pengendali
dan sinkronisasi menyebabkan berbagai masalah akan timbul dalam proses
input/output. Masalah-masalah ini disebabkan oleh perbedaan kecepatan
operasi, perbedaan level sinyal atau tegangan yang dibutuhkan,
keanekaragaman peripheral dan berbagai karakternya, dan stuktur sinyal
yang kompleks. Oleh karena itu dibutuhkan suatu bagian input/output yang
sesuai. Komunikasi antara komponen I/O dengan mikroprtosesor tidak jauh
berbeda antara komunikasi memori dengan mikroprosesor, hanya pada I/O
prosesnya lebih kompleks dari pada memori. Dibawah ini digambarkan
hubungan antara mikroprosesor dengan komponen input/output dan
peripheral.
Hardware terdiri dari :
Input Device
Process Device
Output Device
Macam-macam I/O:
1.Konektor RJ 45Digunakan
untuk koneksi Ethernet pada komputer dan perangkat jaringan Ethernet
lainnya seperti router dan aktif dan juga modem dan juga perangakat lain
yang mendukung interface Ethernet RJ45.Fungsi :Menyambungkan network
antara komputer dengan komputer.
2. USB ( Universal Serial Bus )Port
standard yang ada di komputer saat ini.Konektor-konektor USB tersebut
dapat ditancapi berbagai perangkat mulai dari mouse sampai printer
secara mudah dan cepat. Fungsi :perangkat baru yang belum pernah
terinstal di komputer anda sebelumnya, sistem operasi komputer anda
secara otomatis akan mencoba mengenalinya dengan auto detect.
Struktur I/OBagian ini akan membahas struktur I/O, interupsi I/O, dan DMA, serta perbedaan dalam penanganan interupsi.
Interupsi I/OUntuk
memulai operasi I/O, CPU me-load register yang bersesuaian ke device
controller. Sebaliknya device controller memeriksa isi register untuk
kemudian menentukan operasi apa yang harus dilakukan. Pada saat operasi
I/O dijalankan ada dua kemungkinan, yaitu synchronous I/O dan
asynchronous I/O. Pada synchronous I/O, kendali dikembalikan ke proses
pengguna setelah proses I/O selesai dikerjakan. Sedangkan pada
asynchronous I/O, kendali dikembalikan ke proses pengguna tanpa menunggu
proses I/O selesai. Sehingga proses I/O dan proses pengguna dapat
dijalankan secara bersamaan.
Proteksi I/OPengguna bisa
mengacaukan sistem operasi dengan melakukan instruksi I/O ilegal dengan
mengakses lokasi memori untuk sistem operasi atau dengan cara hendak
melepaskan diri dari prosesor. Untuk mencegahnya kita menganggap semua
instruksi I/O sebagai privilidge instruction sehingga mereka tidak bisa
mengerjakan instruksi I/O secara langsung ke memori tapi harus lewat
sistem operasi terlebih dahulu. Proteksi I/O dikatakan selesai jika
pengguna dapat dipastikan tidak akan menyentuh mode monitor. Jika hal
ini terjadi proteksi I/O dapat dikompromikan.
Managemen Sistem I/OSering
disebut device manager. Menyediakan “device driver” yang umum sehingga
operasi I/O dapat seragam (membuka, membaca, menulis, menutup). Contoh:
pengguna menggunakan operasi yang sama untuk membaca berkas pada
hard-disk, CD-ROM dan floppy disk.
Komponen Sistem Operasi untuk sistem I/O:
· Buffer: menampung sementara data dari/ ke perangkat I/O.
· Spooling: melakukan penjadualan pemakaian I/O sistem supaya lebih efisien (antrian dsb.).
· Menyediakan driver untuk dapat melakukan operasi “rinci” untuk perangkat keras I/O tertentu.
CU (Control Unit)Digunakan untuk mengatur dan menjalankani instruksi dalam urutan yang telah ditetapkan.
ALU(Arithmatic and Logic Unit)Bagian perangkat keras yang berhubungan langsung dengan perhitungan arithmatic.
RAM (Random Access Memory)Memori yang membaca dan menulis.
ROM (Read Only MemoryMemori yang dapat membaca saja
Peralatan Inputa. Keyboard
b. Mouse
c. Joystick
d. Scanner
e. Lightpen
f. Trackball
g. Touch Sreen
h. Magnetic Ink Character Reader (MICR)
i. Optical Character Reader (OCR)
j. Optical Mark Recognition (OMR) Reader
k. dll
Perangkat Output
a. Monitor
b. Printer dan Plotter
c. Proyektor
d. Microform
Peralatan Input / Outputa. Disk Drive
b. Tape Drive
c. Modem (Modulator Demudolator)
d. Ethernet
e. PCMCIA
f. Hub
g. Switch
h. Print Server
i. Input / Output Card (I / O Card)
j. SCII Card
k. Terminal
l. CD – Room (Compac Disk-Read Only memory)
m. CD-Read and writer
n. DVD-Room
o. DVD-Read and Writer