Apa itu I/O (input/output)?
I/O (input/output), diucapkan "eye-oh," menggambarkan setiap
operasi, program, atau perangkat yang mentransfer data ke atau dari komputer.
Perangkat I/O yang umum meliputi printer, hard disk, keyboard, dan mouse.
Perangkat input/output memainkan peran penting
dalam pemrograman komputer dengan menyederhanakan cara perangkat komputasi
berkomunikasi melalui jaringan.
Mengapa I/O penting?
Dalam arsitektur komputer, I/O mencakup serangkaian tugas yang harus
dijalankan dengan benar untuk mendukung pembagian data di antara mesin-mesin
yang terpisah. Semua jenis pergerakan data dalam suatu sistem bergantung pada
operasi I/O, termasuk berkas audio, set instruksi perangkat lunak, aliran teks
dan video.
Sinyal
input/output membawa instruksi yang harus dijalankan oleh unit pemrosesan pusat
( CPU ) komputer untuk memulai transfer data. Input dapat
berasal dari perangkat keras, perangkat lunak, atau interaksi manusia.
Sinyal masukan I/O memindahkan data dari CPU,
pengontrol penyimpanan, atau memori ke
perangkat penyimpanan. Sinyal keluaran I/O mengalir dari komputer ke perangkat
keluaran.
Beberapa perangkat I/O merupakan perangkat input
saja, artinya perangkat tersebut mengirim data tetapi tidak menerima data;
perangkat output saja melakukan hal sebaliknya, menerima input tetapi tidak
dapat mengirim data ke mesin lain. Beberapa perangkat I/O menerima input,
memproses data, dan menghasilkan output.
Bagaimana operasi I/O terjadi?
Perangkat I/O secara umum dikategorikan sebagai penyimpanan, komunikasi
jaringan, antarmuka pengguna, atau layanan perangkat keras terkait yang
menggunakan sistem terpisah untuk berinteraksi dengan komputer. Untuk
berkomunikasi, perangkat menggunakan port I/O paralel atau
serial, atau sinyal over-the-air.
Input/output terbagi menjadi dua kategori: hard I/O
dan soft I/O. Hard I/O mengacu pada transfer data langsung yang terjadi antara
komputer dan perangkat fisik eksternal, seperti keyboard atau mouse. Soft I/O
terjadi saat data ditransfer antara komputer atau server melalui jaringan,
seperti streaming media atau
berbagi file.
Operasi I/O dihitung berdasarkan jumlah operasi
yang terjadi per detik, yang juga dikenal sebagai IOPS ,
atau sebagai ukuran kecepatan transfer. Performa I/O dipengaruhi oleh kemampuan
peralatan di dalam komputer, termasuk drive, kartu grafis, dan perangkat
jaringan.
Apa itu manajemen memori I/O?
Sistem komputasi modern sering kali
dibangun dengan prosesor I/O yang terletak di antara bus sistem dan periferal
yang terpasang. Prosesor I/O secara khusus diperlengkapi untuk menangani
operasi yang terkait dengan transfer data.
Untuk memfasilitasi komunikasi antara
perangkat I/O dan prosesor, antarmuka I/O mengidentifikasi semua alamat yang
dihasilkan oleh CPU. Kontroler bertugas memastikan data dikirimkan ke berbagai
komponen komputer. Berbagai metode kontrol digunakan, termasuk yang berikut
ini:
·
Programmed I/O (PIO). Metode ini mengharuskan prosesor
untuk mengeksekusi perintah untuk setiap transfer I/O; dengan demikian, ini
adalah metode yang paling lambat. Keuntungannya adalah bahwa programed I/O
adalah yang paling mudah diprogram.
·
I/O yang digerakkan oleh interupsi. Dengan metode ini, perangkat I/O
mengirimkan perintah saat siap menerima data. CPU kemudian menghentikan
sementara apa yang sedang dilakukannya untuk menjalankan instruksi baru sebelum
melanjutkan aktivitas sebelumnya. Dengan cara ini, CPU tidak perlu memeriksa
status penerimaan perangkat I/O.
·
Advanced Programmable Interrupt Controller (APIC). Variasi ini mengirimkan sinyal
interupsi ke APIC untuk memberi tahu prosesor saat perangkat siap mengirim
data.
·
Akses memori langsung (DMA). DMA melewati CPU untuk mengirim perintah data dari
periferal ke memori utama. DMA adalah pengganti PIO, yang juga dikenal sebagai
I/O terprogram, yaitu proses di mana CPU mengelola semua transaksi data.
·
Unit mesin memori input-output (IOMMU). Dirancang untuk mesin virtual , IOMMU memungkinkan sistem operasi ( OS ) untuk menghubungkan pemetaan perangkat fisik dan
virtual guna mengalokasikan sumber daya memori secara efisien.
Apa perbedaan antara masukan I/O dan
keluaran I/O?
Perangkat I/O dikategorikan sebagai
penyimpanan, jaringan, antarmuka pengguna, atau layanan terkait yang mendukung
perangkat keras yang menghubungkan mesin atau sistem terpisah.
Manajemen perangkat I/O ditangani oleh OS
komputer melalui subsistem khusus yang dirancang untuk mengelola driver perangkat atau perangkat keras yang terpasang.
Komputer modern mendukung berbagai perangkat, termasuk drive audio dan video,
adaptor Bluetooth , drive disk, adaptor tampilan, dongle, printer
berkecepatan tinggi, modem, flash drive USB , dan hotspot seluler .
Perangkat input I/O menciptakan antarmuka
antara pengguna akhir dan komputer atau sistem informasi lainnya. Perangkat
input mengirimkan perintah melalui komponen perangkat keras, perangkat lunak,
atau interaksi manusia. Dalam input I/O, data mengalir dari perangkat ke
komputer.
Operasi keluaran I/O mengacu pada sinyal
data yang dikirim oleh perangkat keluaran sebagai respons terhadap masukan
data. Data mengalir dari komputer ke perangkat keluaran, tempat data tersebut
diekstraksi dan diproses. Pemrosesan memastikan keluaran data disajikan dengan
cara yang dapat dipahami pengguna.