Input/Output Management


🎯 Capaian Pembelajaran

Setelah mempelajari materi ini, mahasiswa diharapkan mampu:

  • Memahami konsep Input/Output (I/O) dalam sistem operasi
  • Menjelaskan cara kerja perangkat I/O
  • Memahami teknik buffering, caching, dan spooling
  • Menjelaskan mekanisme interrupt dan DMA
  • Menganalisis peran OS dalam mengelola I/O secara efisien

1. 🧠 Konsep Dasar Input/Output

1.1 Pengertian

Input/Output (I/O) adalah proses pertukaran data antara komputer dan perangkat luar (peripheral).


πŸ–ΌοΈ Ilustrasi Sistem I/O

https://images.openai.com/static-rsc-4/8NqlpxbehVBDBMlqdh90_pLL5G7WoBP2K64Lc-cTugxPvgoGHQSYvKFUT7yToklvRwvw8O9nSvtucebodGhPGj_BZJCeQIQXwNN58KXCJpM2kKhVAjRwrQ4W623a3xZsopETR15gXsDrRTpTeE17mAc4f-Ed2QjneCgd7jZpwUIIkKQ3QFJDcV_v6ktsuo3L?purpose=fullsize
https://images.openai.com/static-rsc-4/UlCnuWh9kMdV6tllN1ONFEGCVfeqkMu4sWsQeJFV_m_5jl_1gAPy9bxUUokI91SF8ShUKy3vfj4zmCuUZWWxt9HXWXlYt6ykkCxxv3nLJh1DjHUpvuKxResIo-fCOzTOQR0K8362eiszb22k4GAs-oG4AsRTn3l7GNdJF67te0tnVxFszZPCMRQJtcs1-y_N?purpose=fullsize
https://images.openai.com/static-rsc-4/N2f7MY7n0mJWpD6GB-jaOHGIIyTOvXAJ43Q7jv4XzU43SxVI7CuKBMneoCXXrkxp3ZLpmkDnhBQdUgH2fpaTv8ThmaUD_SNMcjHoHU3AKN0GsbhLnWUSYPjpT922FhCf7uRwzOp0Xlemv4VSlpdNdgpvAjAkyG3pbRi76aVX6DXQyAbg60KXbr_EM6O4vVHz?purpose=fullsize

8


🧠 Narasi:

  • Input β†’ data masuk (keyboard, mouse)
  • Output β†’ data keluar (monitor, printer)
  • OS bertugas mengatur komunikasi ini

2. 🧩 Jenis Perangkat I/O

2.1 Perangkat Input

  • Keyboard
  • Mouse
  • Scanner

2.2 Perangkat Output

  • Monitor
  • Printer
  • Speaker

2.3 Perangkat Penyimpanan

  • Hard disk
  • SSD
  • Flashdisk

πŸ“Š Tabel Klasifikasi

JenisContoh
InputKeyboard
OutputMonitor
StorageSSD

3. βš™οΈ Cara Kerja Sistem I/O


πŸ–ΌοΈ Diagram Alur I/O

https://images.openai.com/static-rsc-4/YsfjdpRA8SkyNScxhT6kpWkrBInr-h0VLH1FR5VIndB8GJjUhgiUGb7DaVz5wQoOEkdu9NN2fxugO3wmH7UcRNtawKsm7sEyeV3NN0LLVEe3g6BHAt1RXl437EEsqTN_Bn92_BQgsSHy_X6h3XgDuTmhNLaQ_bpGvcAJbvzdOEzW5wvKVRMl7nh6cC3cyVUy?purpose=fullsize
https://images.openai.com/static-rsc-4/2zfPoGnhkiatnd9q3B7I-4t3OVAhda0jZZRut4UxTbGK8H_8Sjti9bhIWPDrEWWMgWaYfyKEhpS9IqbVZFG8h4NqNwcVxy9RavUJIh8VQUQxG4SnFnrF5vtFfqFNNpMNVFwmuqzEV7mihazM2PhXBVMWUN0QiCbZa6NYKsk3VffyTuhOtVi6MZAiaoO9dO11?purpose=fullsize
https://images.openai.com/static-rsc-4/xDLBWpFXZg6-OVI_10vg5sDw3-AsxoQhI1YBXS5naaMT1JDBBEgEW3PeRDmbqCgxTq5rgP0WrevjROzCIzqqY9Q23iX8Atv3dAmMoTE2uFrTIyike6YNAcFOYNfr9_ZVIpuaCz1dy4gChslkOKt7xJB3lHOuQeIzhoowmzwIq7gaU6Dt0tBKAilpLyXvtjFi?purpose=fullsize

8


🧠 Narasi:

  1. User memberi input
  2. OS menerima melalui driver
  3. Data diproses
  4. Output dikirim ke perangkat

4. πŸ”Œ Device Driver

4.1 Pengertian

Software yang memungkinkan OS berkomunikasi dengan hardware.


🧠 Narasi:

Tanpa driver:
➑ OS tidak bisa mengenali perangkat


Contoh:

  • Driver printer
  • Driver GPU

5. πŸ”„ Teknik I/O


5.1 Programmed I/O

CPU mengontrol langsung I/O

❌ Kekurangan:

  • CPU sibuk

5.2 Interrupt-Driven I/O

πŸ–ΌοΈ Interrupt Diagram

https://images.openai.com/static-rsc-4/2zfPoGnhkiatnd9q3B7I-4t3OVAhda0jZZRut4UxTbGK8H_8Sjti9bhIWPDrEWWMgWaYfyKEhpS9IqbVZFG8h4NqNwcVxy9RavUJIh8VQUQxG4SnFnrF5vtFfqFNNpMNVFwmuqzEV7mihazM2PhXBVMWUN0QiCbZa6NYKsk3VffyTuhOtVi6MZAiaoO9dO11?purpose=fullsize
https://images.openai.com/static-rsc-4/XAlgGFLf73tngszuEsdj4afNINfQJsJ-MSok7khDWh1BpcsHPprZ-mhAwX_gvjkC9Mz4wuTMuGA9WWhcYOKSJ04P83X9I5v4OrR8Zo0m2vmMXRUikfKb9EF9tBcWjaqYu6k7bj3wz51CVdhdOiusJmNFKS9pzUiviMnEtycKUQfXZAHd6tTiX8DKJaVkLWJ9?purpose=fullsize
https://images.openai.com/static-rsc-4/4ylIkkCQzHLVllgFykgawLeM0Q-FWdvPktoOpnwSLmYA0z3AFsIGrrsT2BCCOTegzW5cgxj674q_cIHQ91Ymu0P4wRE65GarVDns6FElfkgPH8RHrfNFAbd7KasCXsaD5LBWIliq_nrEJ1xRzNwMBf09Gp2c0Zs7R9668SwcG5AFPvf2gzqG2GgPJX7rIOAA?purpose=fullsize

9


🧠 Penjelasan:

Perangkat memberi sinyal (interrupt) ke CPU


βœ… Kelebihan:

  • CPU lebih efisien

5.3 Direct Memory Access (DMA)

πŸ–ΌοΈ DMA Diagram

https://images.openai.com/static-rsc-4/1SBoLZjdPQwZYQxJ_7Y9MEzbI3YElgy7xNhFzk8otwKE3ZGEVMsmV-qvnuaGGEBotuaWdVOwpTVmJFQCjbpUfp33trotHCNs60gKdLC3MIaQzWiqipwbTzgRjjpnW4wLO8LCnwCwq4bZWtr8wwJjpbbmHc4SUtVaBShZJBQHuiiUBI5BVmENumtGCk3n4-a1?purpose=fullsize
https://images.openai.com/static-rsc-4/jAF8ViihTB5p5qc3iCR4BwlDRTtH20Js4GDSly_c0T8xv7OwszSFdgoSRcSsV_n2xJEPX4qujUerXJLrBjyMXEgRdcSMksYCCajNjrr7l5QSpd4JcDxZ-k529SeqSJ4OtUD0Mr5OzuahSJ6Tfjy9mwY32kq7yM6dmDOCRtB7xj26pHF_kwflA5lC0SRCdJ35?purpose=fullsize
https://images.openai.com/static-rsc-4/Ty8zQq2HqyJrTRhYPhPuWHq38UHKQy0XGjTDbRBwzQglCebFMVLfpJsagQcpO-wEGz-OnpklBQOsrPC72tzqNVXf_SXNuDU4SbXd_PyNR9b5AfbCz1IN-1V9EMsBGGHhiVUT5BRSWm0cNwcw9E7pQvChiaNmSpCvO5lhoKUK75YzrbDIQVNa4iq2LzjNZJv0?purpose=fullsize

8


🧠 Penjelasan:

Transfer data langsung antara perangkat dan memori


βœ… Kelebihan:

  • Cepat
  • Mengurangi beban CPU

6. πŸ“¦ Buffering, Caching, Spooling


6.1 Buffering

πŸ–ΌοΈ Buffering

https://images.openai.com/static-rsc-4/Sch--mjQHcU_t4ZqEIbk2s0FbVOc5uScxImfCM0u93cH7Y2lhxIbmEYKZ4WLbZ2uNSWjJilrCiUgXzKJTjHab3rXVGP3svvLnXf_7NVafYIndofhNjkBCuSWD_PSc1cvIGrFMWKgeJwiaPS4e-PuCchmgRZp9yW6W_lkyfflWMQswdhWd2Zc3ISaKxeHsY8q?purpose=fullsize
https://images.openai.com/static-rsc-4/JKpjjfP0stXHdiBn0ibr5WcoZNvq8JdMuwylvZSH10mwOr6rslX2zdMyrU7sixPm3v-tEAr4wKx8CBHU9Kv36GJo2uXImgTH0L9mM6-Doj4rxxN5uIU0SFIg-2pNh1fiUwoMxchZQRWILwxPhk8QgFCzHA1wSyIQ4BZaALn_ZjKyEt2ffjcomUsXiyNCIKRI?purpose=fullsize
https://images.openai.com/static-rsc-4/2ftFsCEa_St0pBQ_Q-7qMd8xYa_Gctcis3qi8DsNBw0sCxjBdJcX1eeXQY_NwsK1rDqqmWF5xdUibxUtsXHsDn6T9V_KfCRvcEvkPibzA2u2u9-vbDXuZt_69IiqTvwYGidOSTwLh8_LZwu8vONm85s1CTl9QUk_6_EoQI_8JB5iDEj0lSQ2LZC_CNQ_fP86?purpose=fullsize

8


🧠 Penjelasan:

Menyimpan data sementara


6.2 Caching

πŸ–ΌοΈ Caching

https://images.openai.com/static-rsc-4/DZQnqPNphcSq4UdbPpgFZtMC3-xE7G-Xn5budGpJniB3tdX4wlcizTis5B25zFEbsmkuFV6ztYBeSIvqIlseaqgsDJTYwbMosDSDIBe01r1ND1gYiUF6Wmx93iFi8xn_e_yUHzbrK9tzycnr06138ohTzjSC0veInzutPv0ywzKz0xVFf3ktmnpN96slArY1?purpose=fullsize
https://images.openai.com/static-rsc-4/r7CnoWhdTSiqBHiTV9lkpEN3RDcJ7V8KrAFKvZaY8kITDDIP3bkYbjlxruFSkZ0L9fyKsbsbH_01scgcOL9PIaRJGJ7kxrkPMwlo808gnkiYI0lZZWsYuDcs1rnLlf6x3TBliJTfLqe070QzrYLx8wvauyBxeDKXzzGTVARoPY4Y3krhpnHz9GziEzwcuGMK?purpose=fullsize
https://images.openai.com/static-rsc-4/UnkzpEW2lHoKCdxDDj930YeSPUjFXqBTgGJSGfKFL9E8Rz0IWltt-m5tgrq6zAZwLpUqUmbI03d4TAqrnMMgXCJ0P596sFciyv1kjlP__VpE6dar_DTWqgkiQSmg4qqL1ba1c1ZJktSFUhleb78UCMJbrtIlPJv8II45l_Nf7C2zWxhPYQ8hXAPnic0WKGwy?purpose=fullsize

6


🧠 Penjelasan:

Menyimpan data yang sering digunakan


6.3 Spooling

πŸ–ΌοΈ Spooling

https://images.openai.com/static-rsc-4/pRCPRrzRv2wgzScHhLyIu9Pc3YLLld_bJKcXxCUaXWsi8T_W9JTAlTLJj5ZMWviSEvNUJy_LrTo457m6-y8lnm33NmrKFdx8nLgqAnZWf_jvfQf4DbAMlF4lB2qf8zdOSpnUUtVQxulnfnxnIce9SKvwM6f1yu6x_i5R1fG5SV6MydIBYdSc46R3atwrMk6t?purpose=fullsize
https://images.openai.com/static-rsc-4/Eqed1Cg2M49Leq1Ljiy2eXs-Eh7v5uuCU15ZMH897bzGhLCEQHDUoZU-fQNUhNKmc9_MVoQ9TjRWn8raY2HSakpS5NQyiPHQms7kV982nrIaNfso6BYk3qhkY94FOVA5BptNjVSX0Dfa7rFHrCn7x7J68NfF8it7uAjGtQ59jD_ciQ_sSY8-agbNjFohQPWU?purpose=fullsize
https://images.openai.com/static-rsc-4/8CuTbzGO8P_LJufphgEO-Er7Fh94758Z6l8z3cuXyv7wcMngWfD_c6Dj4Y7ur6HKFxG-hHmTkj6K-zKb7MkJgOuedNpHDb7m5aAXnrAmOJdweYiauzJef9xI7wOxzq-DKwDztefLzmPtCJsrtjDgByXb8BqYYdNoVCI4-j1shvx1-meOJ5_OfoCW-8cAJ8uu?purpose=fullsize

7


🧠 Penjelasan:

Menyimpan antrian pekerjaan (misalnya printer)


πŸ“Š Perbandingan

TeknikFungsi
BufferingData sementara
CachingAkses cepat
SpoolingAntrian pekerjaan

7. ⚠️ Masalah dalam I/O Management

  • Kecepatan perangkat berbeda
  • Bottleneck
  • Overhead
  • Konflik akses

8. πŸ”— Peran OS dalam I/O

  • Mengatur komunikasi perangkat
  • Menyediakan driver
  • Mengoptimalkan performa
  • Menjamin keamanan

9. πŸ’» Studi Kasus

Kasus:

Mahasiswa mencetak dokumen

πŸ“Œ Analisis:

  • Data dikirim ke printer
  • Disimpan di spool
  • Printer mencetak sesuai antrian

10. πŸ§ͺ Contoh Sederhana (Konsep)

print("Hello World")

πŸ“Œ Proses:

  • Program β†’ OS β†’ driver β†’ printer

11. πŸ“ Latihan

  1. Apa itu I/O?
  2. Jelaskan perbedaan interrupt dan DMA!
  3. Apa fungsi buffering?
  4. Mengapa spooling penting?

🎯 Kesimpulan

  • I/O menghubungkan komputer dengan dunia luar
  • OS mengelola perangkat melalui driver
  • Teknik seperti buffering & DMA meningkatkan efisiensi
  • Manajemen I/O penting untuk performa sistem

πŸš€ Pengembangan Materi Selanjutnya

➑ Keamanan Sistem
➑ Sistem Terdistribusi
➑ Virtualisasi