KATA PENGANTAR
Puji Syukur kepada Tuhan Yang Maha Esa, karena berkat pertolonganNya saya berhasil menyelesaikan makalah “Manajemen I/O” ini. Adapun makalah ini disusun untuk memenuhi tugas mata kuliah Sistem Operasi. Dalam makalah ini terkandung definisi serta semua pembahasan tentang Manajemen I/O. Makalah ini di susun juga agar supaya para pembaca bisa mengerti dan memahami tentang apa itu Manajemen I/O.
Dalam penyusunan makalah ini ada banyak pihak yang membantu, untuk itu saya berterimakasih yang sebesar-besarnya kepada semua pihak yang membantu dalam penyusunan makalah ini. Makalah ini masih belum bisa di katakan sempurna karena masih banyak yang masih perlu untuk di perbaiki untuk itu saya harap para pembaca bisa memahami serta memberi saran yang baik. Semoga makalah ini dapat berguna bagi para pembaca dan bagi Dosen mata kuliah Sistem Operasi yang akan memeriksa serta membacanya.
DAFTAR PUSTAKA
KATA PENGANTAR. 1
DAFTAR PUSTAKA.. 2
BAB I 3
- Latar Belakang. 3
- Rumusan Masalah. 4
- Tujuan. 4
BAB II 4
- Pengertian Manajemen I/O.. 4
- Komponen Sistem Operasi untuk sistem I/O : 5
- Manajemen I/O Pada Windows. 5
- Manajemen I/O Pada Linux. 6
- Fungsi manajemen input/ouput (I/O) : 6
- Komponen Sistem Operasi untuk sistem I/O : 6
- 1.BUFFERING I/O.. 6
- SPOOLING.. 7
- Perngkat I/O : 7
- Software. 8
- Hardware. 8
- Teknik I/O meliputi: 8
- Perangkat I/O terprogram (programmed I/O). 8
- Perangkat berkendalikan interupsi (Interrupt I/O). 8
- DMA (Direct Memory Address). 9
- Prinsip Menejemen Perangkat I/O.. 9
- Masalah – Masalah Dalam Menejemen I/O.. 9
- Penamaan yang seragam (uniform naming). 9
- Penanganan kesalahan (error handling). 9
- Transfer sinkron vs asinkron. 9
- Sharable vs dedicated. 10
- Hirarki manajemen perangkat I/O.. 10
- Interrupt handler. 10
- Device drivers. 10
- Perangkat lunak device independent. 10
- Perangkat lunak level pemakai. 11
BAB III 11
- Kesimpulan. 11
DAFTAR PUSAKA : 12
BAB I
PENDAHULUAN
- Latar Belakang
Sistem Operasi adalah bagian yang sangat penting bagi semua sistem komputer. Secara umum sistem komputer terbagi atas hardware , sistem operasi, program aplikasi, dan user. hardware terdiri atas CPU, memori {XE “memori”} dan I/O device yang merupakan resource-resource dasar. Program aplikasi berisi compiler, basis data, game dan program-program bisnis, yang merupakan suatu cara atau alat yang mana resource-resource akan di akses untuk menyelesaikan masalah user.
Pekerjaan utama yang paling sering dilakukan oleh sistem computer selain melakukankomputasi adalah Masukan/Keluaran (M/K) atau sering dikenal dengan Input/Output (I/O). Dalam kenyataannya, waktu yang digunakan untuk komputasi lebih sedikit dibandingkan waktu untuk I/O. Ditambah lagi dengan banyaknya variasi perangkat I/O sehingga membuat manajemen I/O menjadi komponen yang penting bagi sebuah sistem operasi..
- Rumusan Masalah
- Pengertian Manajemen I/O
- Klasifikasi perangkat I/O
- Prinsip manajemen perangkat I/O
- Fungsi manajemen (I/O)
- Masalah-masalah manajemen I/O
- Tujuan
Adapun tujuan dari pembuatan makalah ini, yaitu sebagai berikut:
- Untuk memenuhi Tugas Pada Mata Kuliah Sistem Operasi
- Menambah pengetahuan tentang Manajemen Input Output
BAB II
PEMBAHASAN
- Pengertian Manajemen I/O
Manajemen sistem I/O merupakan aspek perancangan sistem operasi yang terluas disebabkan sangat beragamnya perangkat dan begitu banyaknya aplikasi dari perangkat- perangkat itu.
- Komponen Sistem Operasi untuk sistem I/O :
- Buffer : menampung sementara data dari/ke perangkat I/O.
- Spooling : melakukan penjadwalan pemakaian I/O sistem supaya lebih efisien (antrian dsb.).
- Menyediakan “driver” untuk dapat melakukan operasi “rinci” untuk perangkat keras I/O tertentu.
Manajemen perangkat masukan/keluaran merupakan aspek perancangan sistem
operasi terluas dan kompleks karena sangat beragamnya perangkat dan aplikasinya.
Dalam sistem komputer manajemen i/o sangat diperlukan karena i/o adalah sarana user untuk bisa berkomunikasi dengan komputer. Contoh perangkat i/o seperti keyboard, mice, audio controllers, video controllers, disk drives, networking ports, dll. Manajemen i/o pun diperlukan agar user dapat langsung menggunakan perangkat i/o tanpa harus menginialisasi terlebih dahulu. Oleh karena itu, dalam setiap system operasi selalu terdapat i/o manager
- Manajemen I/O Pada Windows
Dalam windows sistem i/o menyediakan model driver berlapis yang dinamakan stack. Biasanya IRP akan berpindah dari satu driver ke driver lain dalam satu stack yang sama ke fasilitas komunikasi. Misalkan mouse ketika digunakan harus berkomunikasi dengan USB hub, kemudian USB hub harus berkomunikasi dengan USB Host Controller, selanjutnya USB Host Controller harus berkomunikasi melalui PCI bus ke seluruh hardware computer. Maka stack akan berisi mouse driver, USB hub, USB Host Controller, dan PCI bus. Pada windows semua kelas perangkat berbagi driver umum yang disebut “port driver”. Port driver mengimplementasikan operasi standard untuk suatu kelas dan “calls device-spesific routine” yang kemudian mengimplementasikan fungsi “device-spesific”.
i/o manager pada windows mempunyai 2 sub component yaitu: Plug and Play manager and power manager. PnP manager adalah teknologi PnP milik Microsoft yang berfungsi untuk mengenali dan mengadaptasi perubahan pada konfigurasi hardware. Agar Pnp bekerja maka perangkat dan drivernya harus memenuhi standar PnP. Pnp manager secara otomatis mengenali perangkat yang dipasang dan mendeteksi perubahan pada perangkat seiring sistem beroperasi. Pnp manager pun tetap mengawasi sumber daya yang digunakan oleh perangkat, dan juga potensi jika sumber daya tersebut digunakan serta menangani “loading” driver tersebut. Dilain sisi, power manager ikut berperan dalam mengurangi komsumsi tenaga pada perangkat. Sehingga suatu perangkat dapat diset dalam mode “low-power”(sleep mode) ketika tidak digunakan, dan dapat langsung dipakai ketika diperlukan.
- Manajemen I/O Pada Linux
Dalam Linux system i/o kurang lebih mirip dengan yang terdapat pada Unix. User dapat membuka saluran akses ke perangkat sama seperti membuka file-perangkat lain yang tampak sebagai objek dalam file sistem. Linux membagi semua perangkat i/o menjadi 3 kelas: “block devices”, “character devices”, dan “network devices”.
“Block devices” yaitu menyimpan, menerima, dan mengirim informasi sebagai blok-blok berukuran tetap yang berukuran 128 sampai 1024 byte dan memiliki alamat tersendiri, sehingga memungkinkan membaca atau menulis blok-blok secara independen, yaitu dapat membaca atau menulis sembarang blok tanpa harus melewati blok-blok lain. Contoh : disk, tape, CD ROM, optical disk. Fungsi “block devices” sendiri didukung oleh 2 sistem component, block buffer cache dan request manager. Block buffer cache bertugas sebagai pool dari buffer i/o aktif dan cache dari “completed i/o”. “Request manager” adalah lapisan software yang mengelola konten read dan write buffer dari dan menuju block-device driver.
“Character devices” yaitu perangkat yang menerima, dan mengirimkan aliran karakter tanpa membentuk suatu struktur blok. Contoh : terminal, line printer, pita kertas, kartu-kartu berlubang, mouse. Perangkat ini tidak memerlukan random access untuk sebuah block data. Akan tetapi, tiap perangkat telah memiliki berbagai fungsi yang telah terdaftar pada kernel yang diimplementasikan pada file operasi i/o.
Sedangkan “network devices” berbeda dengan block atau character devices, user harus berkomunikasi secara tidak langsung dengan cara harus membuka sambungan dengan subsistem jaringan kernel.
- Fungsi manajemen input/ouput (I/O) :
- Mengirim perintah ke perangkat I/O agar menyediakan layanan.
- Menangani interupsi perangkat I/O.
- Menangani kesalahan perangkat I/O.
- Menyediakan interface ke pemakai.
- Komponen Sistem Operasi untuk sistem I/O :
1. BUFFERING I/O
Buffering adalah melembutkan lonjakan-lonjakan kebutuhan pengaksesan I/O, sehingga meningkatkan efisiensi dan kinerja sistem operasi.
Terdapat beragam cara buffering, antar lain :
1.1 Single buffering.
Merupakan teknik paling sederhana. Ketika proses memberi perintah untuk perangkat I/O, sistem operasi menyediakan buffer memori utama sistem untuk operasi.Untuk perangkat berorientasi blok.Transfer masukan dibuat ke buffer sistem. Ketika transfer selesai, proses memindahkan blok ke ruang pemakai dan segera meminta blok lain. Teknik ini disebut reading ahead atau anticipated input. Teknik ini dilakukan dengan harapan blok akan segera diperlukan. Untuk banyak tipe komputasi, asumsi ini berlaku. Hanya di akhir pemrosesan maka blok yang dibaca tidak diperlukan.
1.2 Double buffering.
Peningkatan dapat dibuat dengan dua buffer sistem.Proses dapat ditransfer ke/dari satu buffer sementara sistem operasi mengosongkan (atau mengisi) buffer lain. Teknik ini disebut double buffering atau buffer swapping. Double buffering menjamin proses tidak menunggu operasi I/O. Peningkatan ini harus dibayar dengan peningkatan kompleksitas.
1.3 Circular buffering.
Seharusnya melembutkan aliran data antara perangkat I/O dan proses. Jika kinerja proses tertentu menjadi fokus kita, maka kita ingin agar operasi I/O mengikuti proses. Double buffering tidak mencukupi jika proses melakukan operasi I/O yang berturutan dengan cepat. Masalah sering dapat dihindari denga menggunakan lebih dari dua buffer. Ketika lebih dari dua buffer yang digunakan, kumpulan buffer itu sendiri diacu sebagai circulat buffer. Tiap bufferindividu adalah satu unit di circular buffer.
2. SPOOLING
Melakukan penjadwalan pemakaian I/O sistem supaya lebih efisien (antrian dsb.). Menyediakan driver untuk dapat melakukan operasi rinci untuk perangkat keras I/O tertentu. Manajemen perangkat masukan/keluaran merupakan aspek perancangan sistem operasi terluas dan kompleks karena sangat beragamnya perangkat dan aplikasinya.
- Perngkat I/O :
1. Software
- Device handler adalah sebuah software kecil yang memberitahu sistem operasi dan software lain tentang bagaimana menggunakanatau berkomunikasi dengan hardware.
- Interrupt handler adalah subroutine panggilan balik di firmware mikrokontroler, sistem operasi atau driver perangkat yang eksekusi adalah dipicu oleh penerimaan interrupt.
- Subsistem merupakan komponen atau bagian dari suatu system, subsistem ini bisa phisik ataupun abstrak.
- Pustaka Aplikasi mengimplementasikan pustaka pengaksesan I/O atau API (Application Programming Interface) bagi aplikasi untuk melakukan operasi I/O. Memudahkan user karena pengaksesan ke berbagai macam piranti I/O dengan menggunakan operasi yang sama.
2. Hardware
- Device driver adalah istilah teknologi informasi yang mengizinkan sebuah sistem komputer untuk berkomunikasi dengan sebuah perangkat keras
- Bus I/O terdiri atas bus data, alamat dan kontrol yang berfungsi menghubungkan device controller dengan elemen internal komputer seperti processor dan memory.
- Device controller , dengan adanya device controller piranti-piranti I/O dapat dikontrol dan berkomunikasi dengan sistem komputer. Device controller berfungsi sebagai antarmuka antara piranti I/O dengan sistem internal komputer.
- Teknik I/O meliputi:
1. Perangkat I/O terprogram (programmed I/O)
Merupakan perangkat I/O komputer yang dikontrol oleh program.
Contohnya: perintah mesin in, out, move.
Perangkat I/O terprogram tidak sesuai, untuk pengalihan data dengan kecepatan tinggi. Karena dua alasan yaitu:
a.Memerlukan overhead (ongkos) yang tinggi, karena beberapa perintah program harus dieksekusi untuk setiap kata data yang dialihkan antara peralatan eksternal dengan memori utama.
- Banyak peralatan periferal kecepatan tinggi memiliki mode operasi sinkron, yaitu pengalihan data dikontrol oleh clock frekuensi tetap, tidak tergantung CPU.
2. Perangkat berkendalikan interupsi (Interrupt I/O)
Interupsi lebih dari sebuah mekanisme sederhana untuk mengkoordinasi pengalihan I/O. Konsep interupsi berguna di dalam sistem operasi dan pada banyak aplikasi kontrol di mana pemrosesan rutin tertentu harus diatur dengan seksama, relatif peristiwa-peristiwa eksternal.
3. DMA (Direct Memory Address)
Merupakan suatu pendekatan alternatif yang digunakan sebagai unit
pengaturan khusus yang disediakan untuk memungkinkan pengalihan blok data secara langsung antara peralatan eksternal dan memori utama tanpa intervensi terus menerus oleh CPU.
- Prinsip Menejemen Perangkat I/O
Terdapat dua sasaran perancangan I/O, yaitu :
- Efisiensi.
Aspek penting karena operasi I/O sering menimbulkan bottleneck.
- Generalitas (device independence).
Manajemen perangkat I/O selain berkaitan dengan simplisitas dan bebas kesalahan, juga menangani perangkat secara seragam baik dari cara proses memandang maupun cara sistem operasi mengelola perangkat dan operasi I/O.
Software diorganisasikan berlapis. Lapisan bawah berurusan menyembunyikan kerumitan perangkat keras untuk lapisan-lapisan lebih atas. Lapisan lebih atas berurusanmemberi antar muka yang bagus, bersih, nyaman dan seragam ke pemakai.
- Masalah – Masalah Dalam Menejemen I/O
- Penamaan yang seragam (uniform naming).
Nama berkas atau perangkat adalah string atau integer, tidak bergantung pada perangkat sama sekali.
- Penanganan kesalahan (error handling).
Umumnya penanganan kesalahan ditangani sedekat mungkin dengan perangkat keras.
- Transfer sinkron vs asinkron.
Kebanyakan I/O adalah asinkron. Pemroses mulai transfer dan mengabaikan untuk melakukan kerja lain sampai interupsi tiba. Program pemakai sangat lebih mudah ditulis jika operasi I/O berorientasi blok. Setelah perintah read, program kemudian ditunda secara otomatis sampai data tersedia di buffer.
- Sharable vs dedicated.
Beberapa perangk dapat dipakai bersama seperti disk, tapi ada juga perangkat yang hanya satu pemakai yang dibolehkan memakai pada satu saat. Contoh : printer.
- Hirarki manajemen perangkat I/O
a. Interrupt handler.
Interupsi harus disembunyikan agar tidak terlihat rutin berikutnya. Device driver di blocked saat perintah I/O diberikan dan menunggu interupsi. Ketika interupsi terjadi, prosedur penanganan interupsi bekerja agar device driver keluar dari state blocked.
b. Device drivers.
Semua kode bergantung perangkat ditempatkan di device driver. Tiap device driver menangani satu tipe (kelas) perangkat dan bertugas menerima permintaan abstrak perangkat lunak device independent diatasnya dan melakukan layanan permintaan. Mekanisme kerja device driver :
– Menerjemahkan perintah abstrak menjadi perintah konkret.
– Setelah ditentukan perintah yang harus diberikan ke pengendali, device driver mulai menulis ke register-register pengendali perangkat.
– Setelah operasi selesai dilakukan perangkat, device driver memeriksa status kesalahan yang terjadi.
– Jika berjalan baik, device driver melewatkan data ke perangkat lunak device independent.
– Kemudian device driver melaporkan status operasinya ke pemanggil.
c. Perangkat lunak device independent.
Bertujuan membentuk fungsi-fungsi I/O yang berlaku untuk semua perangkat dan memberi antarmuka seragam ke perangkat lunak tingkat pemakai. Fungsi-fungsi lain yang dilakukan :
– Sebagai interface seragam untuk seluruh device driver.
– Penamaan perangkat.
– Proteksi perangkat.
– Memberi ukuran blok perangkat agar bersifat device independent.
– Melakukan buffering.
– Alokasi penyimpanan pada block devices.
– Alokasi dan pelepasan dedicated devices.
– Pelaporan kesalahan.
d. Perangkat lunak level pemakai.
Kebanyakan perangkat lunak I/O terdapat di sistem operasi. Satu bagian kecil berisi pustaka-pustaka yang dikaitkan pada program pemakai dan berjalan diluar kernel. System calls I/O umumnya dibuat sebagai prosedur-prosedur pustaka. Kumpulan prosedur pustaka I/O merupakan bagian sistem I/O. Tidak semua perangkat lunak I/O level pemakai berupa prosedur-prosedur pustaka. Kategori penting adalah sistem spooling. Spooling adalah cara khusus berurusan dengan perangkat I/O yang harus didedikasikan pada sistem multiprogramming.
BAB III
PENUTUP
- Kesimpulan
Dalam sistem komputer manajemen i/o sangat diperlukan karena i/o adalah sarana user untuk bisa berkomunikasi dengan komputer. Contoh perangkat i/o seperti keyboard, mice, audio controllers, video controllers, disk drives, networking ports, dll. Manajemen i/o pun diperlukan agar user dapat langsung menggunakan perangkat i/o tanpa harus menginialisasi terlebih dahulu. Oleh karena itu, dalam setiap system operasi selalu terdapat i/o manajemen.
Link Download : Makalah Manajement