Manajemen Device Kata Pengantar Salah satu tugas sistem operasi adalah mengontrol operasi – operasi piranti input

/output (I/O) atau device pada sistem komputer. Selain itu sistem operasi mengontrol operasi piranti I/O dengan mengirimkan instruksi ataupun memeriksa status piranti I/O bersangkutan. Selain mengontrol operasi I/O, sistem operasi harus menyediaka antar muka yang mudah dan seragam untuk memudahkan operasi I/O serta menyembunyikan detail perbedaan operasi antar piranti I/O. Bagian ini akan menjelaskan organisasi sistem I/O dari suatu sistem komputer, baik dari segi perangkat keras maupun perangkat lunaknya. Organisasi Sistem I/O Secara fisik, organisasi sistem I/O pada sistem komputer dapat dibedakan atas : 1.Piranti I/O (Device) Piranti – piranti I/O yang terkoneksi ke komputer mempunyai karakteristik khas sesuai dengan fungsi dan teknologi yang digunakannya. Contoh piranti I/O seperti monitor, keyboard, mouse, printer dan scanner. 2.Device Controller (Adapter) Device Controller berfungsi sebagai antarmuka antara piranti I/O denga sistem internal komputer. Device Controller ini merupakan sirkuit digital yang berfugsi mengontrol kerja komponen mekanik ataupun elektris lainnya dari piranti I/O. 3.Bus I/O Bus I/O terdiri atas bus data, alamat dan kontrol yang berfungsi menghubungkan device controller dengan elemen internal komputer seperti prosessor dan memori. 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 (movable) dan umumnya terletak di luar kotak komputer. Sistem I/O komputer dapat pula ditinjau dari segi organisasi sistem perangkat lunaknya. Pada kebanyakan sistem operasi seperti keluarga keluarga sistem operasi Windows ataupun Linux, sistem perangkat lunak I/O dirancang dalam struktur berlapis dan umumnya terdiri atas lapisan : 1.Lapisan Intterupt Handler Lapisan perangkat lunak ini menangani terjadinya interupsi dan pengalihan eksekusi ke rutin penanganan interupsi, intterupt handler, yang bersesuaian. 2.Lapisan Device Driver Lapisan Device Driver mengimplementasi secara khusus rincian operasi dari masing – masing jenis pengendali piranti I/O atau device controller. Lapisan device driver merupakan abstraksi terhadap operasi piranti I/O yang sangat beragam dan menyediakan antarmuka yang seragam untuk piranti I/O yag sejenis. 3.Lapisan Subsistem I/O atau kernel I/O Lapisan ini menyediakan antarmuka atau fungsi I/O yang generik bagi komponen lain sistem operasi maupun aplikasi.

Masing – masing peranti I/O memiliki karakteristik seperti gambar di bawah ini. Pada peranti I/O karakter. Sementara pada peranti I/O dengan metode akses acak. 2.Modus Transfer Data berdasarkan kategori ini. Sementara peranti I/O asinkron dapat melakukan transfer data sewaktu – waktu dan kapan saja seperti pada perati keyboard. Peranti I/O sinkron berarti transfer data hanya dapat dilakukan pada interval waktu tertentu. contohnya modem.pada peranti I/O dengan metode akses sekuensial.Berdasarkan kategori ini.Kecepatan Akses . peranti I/O dapat dibedakan atas peranti I/O sinkron dan peranti I/O asinkron. sedangkan contoh peranti I/O per blok adalah disk magnetik. unit terkecil transfer data peranti I/O adalah per karakter. 4.Lapisan Pustaka I/O apikasi Lapisan ini mengimplementasi pustaka pengaksesan I/O atau API (Aplication Programming Interface) bagi aplikasi untukmelakukan operasi I/O. seperti tape disk.Metode akses Berdasarkan kategori ini. peranti I/O dapat dibedakan atas peranti I/O teredikasi (dedicated) dan peranti I/O yang digunakan bersama (shared). Ini berarti untuk membaca suatu data yang terletak pada akhir harus melewatu seluruh bagian data dari awal sampai posisi akhir tersebut. Contoh peranti I/O per karakter adalah terminal keyboard.Jadwal Transfer berdasarkan kategori ini. peranti I/O dapat dibedakan sebagai peranti I/O dengan modus transfer per karakter ataupun per blok. Sementara peranti I/O shared dapat digunakan bersama seperti halnya peranti keyboard. Peranti I/O yang terdedikasi berarti peranti I/O tersebut hanya dapat digunakan oleh suatu proses pada suatu waktu seperti halnya tape disk. baik baik baca ataupun tulis. 3. pengaksesan. pengaksesan dapat langsung melompat ke posisi yang dikehendaki.4. peranti I/O dapat dibedakan sebagai peranti I/O dengan metode akses skuensial dan metode akses acak. harus dilakkan secara berurutan. 5. unit terkeci transfer data peranti I/O adalah per blok data. sedangkan pada peranti I/O blok. Gambar penggolongan peranti I/O berdasarkan karakteristiknya Untuk membedakan karakteristik antara peranti I/O yang satu dengan yang lainnya adalah : 1. PERANGKAT KERAS I/O PERANTI I/O Peranti keras I/O atau device pada sistem komputer amatlah beragam. contohnya CD ROM dan Disk.

Contohnya adalah NIC (network interface card) dan modem. 2. peranti I/O dapat dibedakan berdasarkan fungsionalaitas sebagai berikut : 1. waktu untuk menunggu kesiapan peranti I/O. Port controller merupakan device controller khusus yang mengatur pengiriman data antara bus I/O internal. scaner dan seperti peranti output seperti monitor. Kecepatan suatu peranti I/O tergantung pada sejumlah aspek seperti latency. DEVICE CONTROLLER Device controller merupakan bagian dari organisasi fisik sistem I/O yang berfungsi sebagai pengendali sistem digital terhadap peranti I/O dan juga bertanggung jawab atas komunikasi data antara peranti I/O dan sistem internal komputer. merupakan tandem yang mengabstraksi sepenuhnya pengaksesan ke peranti fisik I/O. Peranti I/O read-write dapat melakukan operasi input dan output seperi peranti peyimpanan atau disk. seperti keyboard. gambar variasi keceptan berbagai peranti I/O Selain karakteristik di atas. misalnya PCI bus. Device controller dapat berupa suatu kartu rangkaian digital maupun chipset yang ditempatkan pada rangkaian induk sistem komputer. Peranti I/O write-only dapat melakukan operasi output saja seperti graphic controller. serta floppy disk.Modus Operasi I/O Berdasarkan kategori ini.Peranti antar muka pengguna yaitu peranti yang menjembatani interaksi langsung antara pengguna. yang dapat dibedakan lebih lanjut menjadi peranti input. kemudian seek time. write-only. transfer rate. Device controller disisi perangkat keras dan device driver di sisi perangkat lunak. peranti I/O dapat dibedakan sebagai peranti I/O read-only. seperti bus paralel.Berdasarkan kategori ini peranti I/O dapat dibedakan berdasarkan spektrum atu jangkauan kecepatan akses peranti I/O tersebut. 6. yaitu waktu untuk mencari lokasi data. CDROM. Umumnya satu device controller dapat mengelola satu atau lebih peranti I/O yang sejenis. umumnya manusia dengan sistem komputer.Peranti transmisi yaitu peranti yang berfungsi untuk mentransmisikan data secara internal maupun eksternal ke perangkat komputasi lainnya.Peranti penyimpanan data yaitu peranti yag berfungsi untuk penyimpanan data. printer. DVDROM. ataupun di peranti I/O. yaitu kecepatan transmisi data dari/ke memori. Peranti I/O read-only hanya dapat melalukan operasi input saja seperti CDROM. dan bus USB. serta read-write. flash memory. 3. . dengan bus eksternal. serta waktu tunda antara operasi yang satu dengan operasi berikutnya. mainboard. yang meliputi waktu tunggu di antrean. Contohnya adalah Hardisk. bus serial. mouse.

sedangkan port controller berupa kepingan chipset pada mainboard. yaitu membaca atau menulis data ke peranti I/O maka peranti I/O butuh diberi alamat khusus.BUS I/O Bus I/O terdiri atas bus data. 2. Contoh bus ekspansi adalah bus IDE. Dalam model ini. Ada 2 macam metode untuk memberi pegalamatan pada peranti I/O : 1. bus serial. Selain itu. paralel dan USB. bagian tertentu dari ruang alamat memori memiliki alokasi khusus sebagai alamat dari peranti – peranti I/O. peranti I/O memiliki alamat yang merupakan bagian dari ruang alamat memori secara global.Dirrect-mapped I/O addressing Pada skema pengelamatan ini. dan kontrol yang berfungsi menghubungkan device controller dengan elemen internal komputer seperti prosessor dan memori. Gambar kepingan chipset pada mainboard (port controller) Pengelamatan peranti I/O Untuk mengakses peranti I/O. peranti I/O memiliki ruang alamat yang terpisah dari alamat memori. Komunikasi data lewat bus khusus ini masing – masing diatur oleh port controller. alamat. Jadi sistem komputernya akan memiliki ruang alamat memori dan ruang alamat peranti I/O yang berdiri sendiri – sendiri. Sesungguhnya yang diberi alamat adalah register – register pada device controller-nya. untuk sejumlah peranti I/O diperlukan bus ekspansi untuk menghubungkan sistem internal komputer dengan peranti I/O. Secara fisik bus ekspansi di atas umumnya berbentuk kabel. Contoh gambar pengelamatan peranti I/O METODE TRANSFER DATA .Memory-mapped I/O addressing pada skema pengelamata ini. SCSI.

sebagai ijin untuk memakai bus sistem (prosessor memory bus). Dalam aktivitas ini terjadi kompetesi pemakaian bus sistem dengan proses yang sedang menggunakan prosessor. Pemindahan data ke memori perlu dikendalikan oleh prosessor karena device controller tidak punya kendali atau hak akses langsung terhadap jalur ke memori utama. Teknik ini tidak efisien untuk transfer blok data yang besar. justru device controller akan mengeluarkan sinyal interupsi ke prosessor jika data sudah tersedia untuk disalinkan ke memori utama. b)Device driver menginstruksikan disk controller untuk transfer data sebesar C byte dari disk ke lokasi buffer X di memori utama. suatu proses yang sedang berjalan melakukan operasi I/O dengan memanggil salah satu fungsi device driver untuk melakukan transfer data dari disk ke buffer X di memori utama. c)Disk controller akan menginisialisasi transfer DMA. Langkah ini meliputi DMA controller mengirimkan DMA request ke prosessor. Prosessor tidak perlu memeriksa ketersediaan data ke device controller. Sebagai gantinya diperlukan tabahan perangkat keras DMA controller yang memiliki kendali atas bus iternal dan jalur ke memori utama. Jika data telah siap di transfer maka prosessor akan memindahkan data ke memori.DMA (Direct Memory Access) Metode transfer ini membebaskan prosessor sepenuhnya dari pengontrolan transfer data I/O. Jadi prosessor memberikan instruksi tranfer data ke device controller dan melanjutkan instruksi proses lainnya.Programmed I/O atau Pooling Prosessor bertanggung jawab atas pemeriksaan atas selesainya operasi transfer data yang dilakukan oleh device controller serta bertaggung jawab atas pemindahan data dari atau ke memori utama. e)Jika sudah selesai. 2. .Interrupt – Driven I/O Prosessor hanya bertanggung jawab atas pemindahan data ke atau dari memori utama. Jadi prosessor memberi instruksi transfer data ke device controller dan harus memeriksa terus menerus status device controller untuk mengetahui kesiapan transfer data ke memori utama. Selanjutnya prosessor akan mengisi DMA controller dengan informasi transfer data. Gambar di bawah akan menunjukan penanganan transfer data I/O pada umumnya. Jika data sudah ditransfer ke memori utama. DMA mengeluarkan sinyal interupt kepada prosessor dan mengembalikan hak pemakaian bus sistem ke prosessor.Salah satu hal yang cukup penting dalam menentukan kinerja sistem I/O adalah mekanisme transfer data dari peranti I/O ke bagian internal sistem komputer. d)Selanjutnya DMA controller akan mengatur perpindahan setiap word data dari disk controller ke lokasi buffer X ke memori utama. Gambar berbagai methode transfer data 1. DMA controller akan menginterupsi prosessor sebagai informasi bahwa data I/O yang diminta oleh proses sebelumnya telah tersedia di memori utama. Langkah – lagkah transfer data dari disk dengan teknik DMA dan dijeaskn sebagai berikut : a)Pertama. dan DMA akan mengirimkan sinyal DMA acknowledge. 3.

yaitu interupt handler dan device driver sedemikian rupa sehingga lapisan perangkat lunak I/O diatasnya tidak membutuhkan pengetahuan tentang rincian operasi peranti I/O yang sangat beragam. prosesor memulai transfer data dan menjalankan proses lainnya sampai mendapat sinyal bahwa operasi transfer data sudah selesai. CDROM.Error Handling Tujuan lain yang ingin dicapai adalah bagaimana menangani kesalahan. Ini berkaitan dengan tujuan dari sistem perangkat lunak I/O yang antara lain : 1. terutama kesalahan baca yang ditemui pada operasi I/O.Transfer Sinkron vs Asinkron Masalah transfer sinkron atau asinkron merupakan pertimbangan yang penting dalam perancangan perangkat lunak system I/O. 4. prosesor baru .Uniform Naming Tujuan lain yang hendak dicapai adalah penamaan yang seragam untuk berkas yang disimpan di berbagai jenis media penyimpanan yang berbeda. maka ditingkat ini juga kesalahan akan dikoreksi. 3. tidak memandang apakah disiman di floppy disk. harddisk. ataupun di memori stick kamera. sedapat mungkin kesalahan baca dikoreksi pada tingkat perangkat keras. kesalahan ditangani pada semua lapisan perangkat lunak system I/O. Jika device controller masih menemukan kesalahan data. Pada transfer data asinkron. 2. Dan pada operasi asinkron operasi tersebut dapat berjalan sekalipun permintaannya masih belum terpenuhi atau masih diproses. maka device driver juga turut berperan dalam mengoreksi kesalahan baca yang terjadi.Device Independece Tujuan ini dicapai dengan membangun lapisan bawah perangkat lunak sistem I/O. Jadi nama berkas yang digunakan tetap sama. Ini berarti ketika menulis program yang terletak di lapisan atas misalnya program untuk menyimpan atau membaca berkas. suatu operasi dikatakan sinkron apabila operasi tersebut dapat melanjutkan eksekusinya hanya setelah permintaannya terpnuhi. tidak diperlukan untuk membuat berbagai versi program atau fungsi untuk setiap peranti penyimpanan data yang berbeda. DVDROM. Jika setelah itu masih ditemukan adanya kesalahan. Begitu sinyal diterima.Gambar mekanisme transfer data DMA PERANGKAT LUNAK I/O TUJUAN PERANCANGAN PERANGKAT LUNAK I/O Organisasi perangkat lunak sistem I/O pada sistem komputer disusun secara berlapis.

Contohnya adalah peranti printer.Shareable vs Dedicated Device Hal terakhir yang perlu dipertimbangkan dalam perancangan perangkat lunak system I/O adalah apakah suatu peranti I/O bersifat shareable atau dedicated. lapisan device driver mengimplementasi secara khusus rincian dari operasi masing – masing jenis pengendali peranti I/O atau device controller. Berikut akan dibahas kompone perangkat lunak system I/O pada system computer. yang bersesuaian. Lapisan Device Driver Lapisan device driver membantu perangkat lunak system I/O untuk mencapai ketidaktergantungan dengan keberagaman peranti I/O. Sebaliknya pada peranti I/O dedicated. Sekalipun sejumlah proses memasukan tugas pencetakan suatu printer secara bersamaan. Lapisan Interupt Handler Lapisan ini bertujuan untuk mencapai operasi I/O yang asinkron. hanya satu pengguna yang dapat menggunakan peranti I/O pada suatu waktu sampai tugasnya selesai. Ini memungkinkan perangkat lunak I/O di atas lapisan device driver tidak perlu menangani perbedaan antar graphic card dari vendor yang berbeda sehingga device independency dapat tercapai. Jadi setiap device controller akan ditangani oleh suatu device driver yang khusus. proses yang melakukan transfer data I/O akan beralih ke status blocked selama transfer data I/O berlangsung dan prosesor dapat dialokasikan ke prose lain.memproses atau menyelesaikan penanganan transfer data tersebut. Kebanyakan peranti I/O menggunakan transfer data asikron. penjadwalan prosesor akan dilakukan dan eksekusi prosesor dapat beralih ke proses yang terkena iterupsi atau ke proses yang operasi I/Onya telah selesai atau ke proses lainnya. Lapisan perangkat lunak ini menangani terjadinya interupsi dan pengalihan eksekusi ke rutin penanganan iterupsi. Fasilitas interupsi memukinkan transfer data peranti I/O dilakukan secara asinkron sehingga prosesor tidak harus idle selama terjadi proses I/O. Contohnya adalah pembacaan berkas – berkas yang terdapat pada suatu disk pada pengguna computer secara bersamaan. Pada transfer sinkron. tugas pencetakan tersebut akan tetap dilakukan satu per satu secara berurut. 2. interrupt handler. yaitu : interrupt handler. 5. device driver dan kernel I/O. Kemudahan seperti ini dapat dicapai dengan merumuskan bersama antarmuka generic untuk setiap jenis device driver di antara vendor – vendor peranti I/O. Lapisan device driver merupakan abstraksi terhadap operasi peranti I/O yang sangat beragam dan menyediakan antarmuka yang seragam untuk peranti I/O yang sejenis. Misalnya 2 jenis graphics card dari vendor yang berbeda akan emiliki device driver yang menyedikan set fungional minimal utuk pengaksesan graphic card. . Jika ada perubahan konfigurasi peranti fisik I/O maka cukup device driver-nya yang diganti sedangkan lapisan perangkat lunak I/O atasnya tidak perlu dimodifikasi. Suatu peranti I/O dikatakan shareable jika dapat digunakan oleh beberapa pengguna pada saat bersamaan. 1. sehigga prosessor akan menunda eksekusinya dan beralih mengeksekusi rutin penanganan interupsi yag akan mengalihkan proses yang akan meminta operasi I/O yang statusnya dari blocked menjadi ready. Jika transfer data I/O telah selesai maka interupsi akan dibangitkan terhadap prosesor. Setelah itu. prosesor akan berhenti sampai data yag diperlukan tersedia di buffer memori.

jika suatu proses akan menggunakan suatu peranti I/O maka proses tersebut akan melakukan system call kepada system operasi. Manajemen Device Manajemen device memiliki fungsi – fungsi yng diimplementasikan pada lapisa kernel I/O. Pada mekanisme buffering. Beberapa keuntungan dari mekanisme buffering adalah : a. Lapisan Subsistem I/O atau kernel I/O Lapisan kernel I/O mengimplementasi fungsi – fungsi manajemen system I/O untuk bersifat umum dan tidak tergantung pada spesifikasi dan arsitektur dari system komputernya. Kernel I/O bertugas untuk melakukan penjadwalan I/O request jika peranti I/O sudah menyelesaikan I/O request sebelumnya. 2. Scheduling Salah satu fungsi manajemen device yang melakukan penjadwalan penggunaan suatu peranti I/O. Pengiriman data dari memori utama akan dilakukan jika peranti I/O tujuan sudah siap dan dilakukan sesuai dengan kecepatan transfer peranti I/O tujuannya. Kartu jaringa hanya dapat mengirimkan data dalam bentuk paket – paket berukuran kecil. pelaporan kesalahan.3. proteksi. data yang hendak dibaca atau ditulis ke peranti I/O disalin ke memori utama sebelum dipindahkan ke tujuan akhirnya. 4. Fungsi – fungsi yang diimplementasi oleh lapisan subsistem I/O antara lain fungsi penamaan peranti I/O. baik operasi baca ataupun tulis di memori utama. Lapisan pustaka I/O aplikasi Lapisan ini mengimplementasi pustaka pengaksesan I/O atau API (Aplication Programming Interface) bagi aplikasi untuk melakukan operasi I/O. b. Mengatasi perbedaan banwith transfer antar peranti I/O Contoh : o Data keluaran program aplikasi yang hendak dikirim lewat kabel jaringan computer. Data keluaran dari program butuh dipecah . pustaka Win32 sub system yang menyediakan API untuk operasi I/O dan juga operasi grafis pada system operasi keluarga Windows. fungsi – fungsi tersebut adalah : 1. Sebagai contoh. Jika peranti I/O yang hendak diakses sedang sibuk melayani I/O request proses lain maka I/O request tersebut akan dimasukkan ke dalam antrian peranti I/O yang bersangkutan. Mengatasi perbedaan kecepatan antar peranti I/O Mekanisme buffering mengatasi masalah perbedaan kecepatan ini dengan menawarkan komunikasi data secara tidak langsung atau asinkron. Contoh: data keluaran dari program aplikasi yang hendak disimpan kesuatu berkas di disk ataupun data yang hendak disalin dari suatu floppy disk ke hardisk. lapisan ini memudahkan pemrogaman aplikasi. Buffering Yaitu menampung sementara data operasi I/O. System call yang berhubungan dengan layanan I/O selanjutnya akan membuat suatu I/O request. karena pengaksesan ke berbagai macam peranti yang berbeda menggunakan operasi (primitive) yang sama. Lapisan ini menyediakan antarmuka atau fungsi I/O yang generic bagi komponen lain system operasi maupun aplikasi. Adanya keseragaman fungsi memudahkan implementasi komponen lain system operasi maupun aplikasi yang melakukan operasi I/O. Data yang dikirim dari perati I/O asal akan disimpan di memori utama terlebih dahulu mengikuti kecepatan transfer dari peranti I/O asal.

Pada mekanisme caching. baru data dikirimkan untuk disimpan ke disk. data dpat rusk di piranti I/O ataupun selama pross pengiriman. Device Reservation Karena kebanyakan pemakaian piranti I/O bersifat eksklusif maka kernel I/O juga harus memastikan selama pengaksesan piranti I/O oleh suatu proses.– pecah dalam betuk paket kecil dan di-buffer di memori sambil menunggu gilirannya untuk dikirim. Pengaksesan peran I/O hanya terjadi jika data yang hendak diakses ternyata belum ada di cache memory. data yang akan diakses dari peranti I/O akan disalin ke memori utama dan disebut dengan cache memory. Kernel bertugas pula menangani kerusakan – kerusakan data yang masih dapat diperbaiki. Jika hal ini terjadi maka kernel I/O akan memperbarui isi cache memory secara blok supaya probabilitas hit tetap tinggi. Hit adalah kondisi dimana data yang hendak diakses ternyata ada di cache memory. Mempertahankan semantic penyalinan data Buffering menyederhanakan pula penanganan penyalinan data antar peranti I/O. Jika data yang hendak disimpan diperoleh dari keyboard. tidak ada intervensi dari proses lainnya. 3. Jika sudah ada maka data akan diambil dari memori. dengan menggunakan memori utama sebagai media perantara penyalinan maka semantic yang perlu diikuti adalah penyalinan data antara perani I/O dan memori. . tanpa buffering maka kernel I/O harus mengetahui penyalinan data dari suatu jenis peranti I/O kesemua jenis peranti I/O lainnya. Spooling Pada mekanisme spooping setiap proses akan tetap mengirimkan data ke piranti I/O bersangkutan sehingga prosesnya sendiri tidak blocked. a. pengaksesan peranti I/O lebih lambat dibandingkan pengaksesan memori utama. Selain itu. Selain itu. Error Handling Pada operasi I/O. Caching Secara umum. Hal ini dapat pula mengurangi kompleksitas kernel I/O karena hanya memerlukan N model penyalinan yang berbeda. Caching merupakan salah satu kunci dalam meningkatkan kecepatan pengaksesan peranti I/O. Jika ada N jenis peranti I/O yang berbeda maka kernel I/O harus mengetahui N(N-1)/2 model penyalinan data yang berbeda antar peranti I/O. o Penyipanan data ke piringan disk magnetis yang mengharuskan data ditransfer per block data. yang pemasukan datanya perkarakter maka data – data yang dimasukkan dari keyboard harus di buffer dahulu sampai terpenuhi ukuran 1 blok. Pada saat operasi baca terhadap operasi I/O maka kernel I/O akan memeriksa apakan data yang hendak dibaca sudah ada di cache memory. cache memory tanpa harus membaca dari peranti I/O lagi. 4. Tapi karena piranti I/O-nya sedang sibuk maka kernel I/O akan menampung dahulu data yang akan dikirimkan ke piranti I/O dan menempatkannya dalam suatu antrian. 1. Jika piranti I/O-nya sudah tidak sibuk maka data yang telah di spooling oleh kernelI/O tidak akan hilang. kernel I/O memastikan pemakaian dan reservasi suatu piranti I/O tidak membuat kondisi deadlock terhadap system computer. 2. Krnel I/O bertanggung jawab memelihara dan mengaudit tatus sert pemakaian suatu piranti I/O sehingga tidak terjadi pemakaian yang tumpang tindih. bahkan sebelum data tersebut akan digunakan oleh proses. seperti per 512 byte.

Kernel I/O bertugas untuk memulihkan keadaan yang bermasalah dan mencatat atau melaporkan kesalahan kepada pengguna.pengiriman data I/O amatlah rentan terhadap kesalahan. .