Download - Manajemen Device Pada Sistem Operasi Linux
![Page 1: Manajemen Device Pada Sistem Operasi Linux](https://reader035.vdokumen.com/reader035/viewer/2022082200/55cf970e550346d0338f837e/html5/thumbnails/1.jpg)
MANAJEMEN DEVICE
![Page 2: Manajemen Device Pada Sistem Operasi Linux](https://reader035.vdokumen.com/reader035/viewer/2022082200/55cf970e550346d0338f837e/html5/thumbnails/2.jpg)
Salah satu tugas sistem operasi adalah mengontrol operasi-
operasi peranti input/output (I/O) atau device pada sistem
komputer. Selama suatu aplikasi sedang dijalankan, umumnya
diperlukan operasi I/O seperti mendapatkan masukan pengguna
dari keyboard ataupun memunculkan hasil pemrosesan ke
monitor. Sistem operasi bertugas mengambil data masukan dari
keyboard ataupun peranti input lain untuk diproses lebih lanjut
oleh prosesor.
Pengantar
![Page 3: Manajemen Device Pada Sistem Operasi Linux](https://reader035.vdokumen.com/reader035/viewer/2022082200/55cf970e550346d0338f837e/html5/thumbnails/3.jpg)
Sistem I/O pada sistem komputer dapat ditinjau dari segi
organisasi fisik atau perangkat keras maupun dari segi organisasi
perangkat lunaknya. Secara fisik, organisasi sistem I/O pada
sistem komputer dapat dibedakan atas:
Peranti I/O (Device)
Peranti-peranti I/O yang terkoneksi ke komputer memiliki
karakteristik khas sesuai dengan fungsi dan teknologi yang
digunakannya. Peranti I/O dapat berupa komponen elektris
maupun mekanik.
Organisasi Sistem I/O
![Page 4: Manajemen Device Pada Sistem Operasi Linux](https://reader035.vdokumen.com/reader035/viewer/2022082200/55cf970e550346d0338f837e/html5/thumbnails/4.jpg)
Device controller (adapter).
Supaya peranti-peranti I/O dapat dikontrol dan berkomunikasi
dengan sistem komputer maka harus ada Device controller
yang berfungsi sebagai antarmuka antara peranti I/O dengan
sistem internal komputer.
Bus I/O.
Bus I/O terdiri atas bus data, alamat dan kontrol yang
berfungsi menghubungkan device controller dengan elemen
internal komputer seperti prosesor dan memori.
Next..
![Page 5: Manajemen Device Pada Sistem Operasi Linux](https://reader035.vdokumen.com/reader035/viewer/2022082200/55cf970e550346d0338f837e/html5/thumbnails/5.jpg)
Organisasi fisik dari sistem komputer
![Page 6: Manajemen Device Pada Sistem Operasi Linux](https://reader035.vdokumen.com/reader035/viewer/2022082200/55cf970e550346d0338f837e/html5/thumbnails/6.jpg)
Pada kebanyakan sistem operasi seperti keluarga sistem operasi
Windows ataupun Linux, sistem perangkat lunak I/O dirancang
dalam struktur berlapis dan umumnya terdiri atas lapisan:
Lapisan intterupt handler
Lapisan perangkat lunak ini menangani terjadinya interupsi
dan pengalihan eksekusi ke rutin penanganan interupsi,
interrupt handler, yang bersesuaian.
Next
![Page 7: Manajemen Device Pada Sistem Operasi Linux](https://reader035.vdokumen.com/reader035/viewer/2022082200/55cf970e550346d0338f837e/html5/thumbnails/7.jpg)
Lapisan device driver
Lapisan device driver mengimplementasi secara khusus
rincian operasi dari masing-masing jenis pengendali peranti
I/O atau device controller.
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.
Lapisan Pustaka I/O aplikasi
Lapisan ini mengimplementasi pustaka pengaksesan I/O atau
API {Application Programming Interface) bagi aplikasi untuk
melakukan operasi I/O.
Next
![Page 8: Manajemen Device Pada Sistem Operasi Linux](https://reader035.vdokumen.com/reader035/viewer/2022082200/55cf970e550346d0338f837e/html5/thumbnails/8.jpg)
Peranti I/O
Peranti keras I/O atau device pada sistem komputer amatlah
beragam. Masing-masing peranti I/O memiliki karakteristik yang
kha
Perangkat Keras I/O
![Page 9: Manajemen Device Pada Sistem Operasi Linux](https://reader035.vdokumen.com/reader035/viewer/2022082200/55cf970e550346d0338f837e/html5/thumbnails/9.jpg)
Karakteristik yang dapat digunakan sebagai pembeda antara peranti I/O yang
satu sama yang lain antara lain:
Modus transfer data
Berdasarkan kategori i n i , peranti I/O dapat dibedakan sebagai peranti I/O
dengan modus tranfer per karakter ataupun per blok.
Metode akses
Berdasarkan kategori i n i , peranti I/O dapat dibedakan sebagai peranti I/O
dengan metode akses sekuensial dan metode akses acak.
Jadwal transfer
Berdasarkan kategori i n i , peranti I/O dapat dibedakan atas peranti I/O
sinkron dan peranti I/O asinkron.
Next..
![Page 10: Manajemen Device Pada Sistem Operasi Linux](https://reader035.vdokumen.com/reader035/viewer/2022082200/55cf970e550346d0338f837e/html5/thumbnails/10.jpg)
Sharing
Berdasarkan kategori ini, peranti I/O dapat dibedakan atas
peranti I/O terdedikasi (dedicated) dan peranti I/O yang dapat
digunakan bersama (shared).
Kecepatan Akses
Berdasarkan kategori i n i , peranti I/O dapat dibedakan
berdasarkan spektrum atau jangkauan kecepatan akses peranti
I/O tersebut.
Modus Operasi I/O
Berdasarkan kategori i n i , peranti I/O dapat dibedakan
sebagai peranti I/O read-only, write-only, serta read-write.
Next..
![Page 11: Manajemen Device Pada Sistem Operasi Linux](https://reader035.vdokumen.com/reader035/viewer/2022082200/55cf970e550346d0338f837e/html5/thumbnails/11.jpg)
Selain karakteristik di atas, peranti I/O dapat dibedakan berdasarkan
fungsionalitas sebagai berikut:
Peranti antar muka pengguna
Yaitu peranti yang menjembatani interaksi langsung antara pengguna,
umumnya manusia dengan sistem komputer, yang dapat dibedakan lebih
lanjut menjadi peranti input dan peranti output
Peranti transmisi
Yaitu peranti yang berfungsi untuk mentransmisikan data secara internal
maupun eksternal ke perangkat komputasi lainnya.
Peranti penyimpanan data
Yaitu peranti yang berfungsi untuk penyimpanan data.
next
![Page 12: Manajemen Device Pada Sistem Operasi Linux](https://reader035.vdokumen.com/reader035/viewer/2022082200/55cf970e550346d0338f837e/html5/thumbnails/12.jpg)
Device controller merupakan bagian dari organisasi fisik sistem
I/O yang berfungsi sebagai pengendali digital terhadap peranti I/O
dan juga bertanggung jawab atas komunikasi data antara peranti
I/O dengan sistem internal komputer. Port controller merupakan
device controller khusus yang mengatur pengiriman data antara
bus I/O internal, misalnya PCI bus, dengan bus I/O eksternal,
seperti bus paralel, bus serial, dan bus USB.
Device Controller
![Page 13: Manajemen Device Pada Sistem Operasi Linux](https://reader035.vdokumen.com/reader035/viewer/2022082200/55cf970e550346d0338f837e/html5/thumbnails/13.jpg)
Bus I/O terdiri atas bus data, alamat, dan kontrol yang berfungsi
menghubungkan device controller dengan elemen internal
komputer seperti prosesor dan memori. Komunikasi data lewat bus
khusus i n i masing-masing diatur oleh sebuah port controller.
Secara fisik bus ekspansi di atas umumnya berbentuk kabel,
sedangkan port controller berupa kepingan chipset pada main
board.
Bus I/O
![Page 14: Manajemen Device Pada Sistem Operasi Linux](https://reader035.vdokumen.com/reader035/viewer/2022082200/55cf970e550346d0338f837e/html5/thumbnails/14.jpg)
Ada dua macam metoda untuk memberi alamat pada peranti I/O:
Direct-mapped I/O addressing
Pada skema pengalamatan ini, peranti I/O memiliki ruang
alamat yang terpisah dari alamat memori.
Memory-mapped I/O addressing
Pada skema pengalamatan ini, peranti I/O memiliki alamat yang
merupakan bagian dart ruang alamat memori secara global.
Pengalamatan Peranti I/O
![Page 15: Manajemen Device Pada Sistem Operasi Linux](https://reader035.vdokumen.com/reader035/viewer/2022082200/55cf970e550346d0338f837e/html5/thumbnails/15.jpg)
Contoh pengalamatan peranti I/O
![Page 16: Manajemen Device Pada Sistem Operasi Linux](https://reader035.vdokumen.com/reader035/viewer/2022082200/55cf970e550346d0338f837e/html5/thumbnails/16.jpg)
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.
Metode Transfer Data
![Page 17: Manajemen Device Pada Sistem Operasi Linux](https://reader035.vdokumen.com/reader035/viewer/2022082200/55cf970e550346d0338f837e/html5/thumbnails/17.jpg)
next
![Page 18: Manajemen Device Pada Sistem Operasi Linux](https://reader035.vdokumen.com/reader035/viewer/2022082200/55cf970e550346d0338f837e/html5/thumbnails/18.jpg)
Programmed I/O atau Pooling
Gambar 6.5(a) mengambarkan model transfer data dengan programmed
I/O. Prosesor bertanggung jawab atas pemeriksaan atas selesainya operasi
transfer data yang dilakukan oleh device controller serta bertanggung
jawab atas pemindahan data dari atau ke memori utama.
Interrupt -Driven I/O
Gambar 6.5(b) memperlihatkan model transfer data dengan model
Interrupt-driven I/O. Prosesor hanya bertanggung jawab atas pemindahan
data ke atau dari memori utama.
DMA (Direct Memori Access)
Metode transfer i n i membebaskan prosesor sepenuhnya dari pengontrolan
transfer data I/O seperti ditunjukkan pada Gambar 6.5(c
Next
![Page 19: Manajemen Device Pada Sistem Operasi Linux](https://reader035.vdokumen.com/reader035/viewer/2022082200/55cf970e550346d0338f837e/html5/thumbnails/19.jpg)
Ilustrasi langkah-langkah transfer data dari disk dengan teknik DMA dan
dijelaskan sebagai berikut:
Pertama, suatu proses yang sedang berjalan melakukah operasi I/O dengan
memanggil salah satu fungsi device driver untuk melakukan transfer data
dari disk ke buffer X di memori utama.
Device driver menginstruksikan disk controller untuk transfer data sebesar
C byte dari disk ke lokasi buffer X di memori utama.
next
![Page 20: Manajemen Device Pada Sistem Operasi Linux](https://reader035.vdokumen.com/reader035/viewer/2022082200/55cf970e550346d0338f837e/html5/thumbnails/20.jpg)
Disk controller akan menginisialisasi transfer DMA. Langkah
ini meliputi DMA controller mengirimkan DMA request ke
prosesor. Selanjutnya prosesor akan mengisi DMA controller
dengan informasi transfer data, dan DMA akan mengirimkan
sinyal DMA acknowledge, sebagai ijin untuk memakai bus
sistem (prosesormemory bus).
Selanjutnya DMA controller akan mengatur pemindahan
setiap word data dari disk controllerke lokasi buffer X di
memori utama.
next
![Page 21: Manajemen Device Pada Sistem Operasi Linux](https://reader035.vdokumen.com/reader035/viewer/2022082200/55cf970e550346d0338f837e/html5/thumbnails/21.jpg)
Jika sudah selesai, DMA mengeluarkan sinyal interrupt kepada
rosesor dan mengembalikan hak pemakaian bus sistem ke
prosesor.
next
![Page 22: Manajemen Device Pada Sistem Operasi Linux](https://reader035.vdokumen.com/reader035/viewer/2022082200/55cf970e550346d0338f837e/html5/thumbnails/22.jpg)
Tujuan Perencanaan Perangkat Lunak
Device Independece
Tujuan ini dicapai dengan membangun lapisan bawah
perangkat lunak sistem I/O, yaitu interupt handler dan device
^riVer sedemikian rupa sehingga lapisan perangkat lunak I/O
di atasnya tidak membutuhkan pengetahuan tentang rincian
operasi peranti I/O yang sangat beragam.
Uniform Naming
Tujuan lain yan hendak dicapai adalah penamaan yang
seragam untuk berkas yang disimpan di berbagai jenis media
penyimpan yang berbeda.
Perangkat Lunak I/O
![Page 23: Manajemen Device Pada Sistem Operasi Linux](https://reader035.vdokumen.com/reader035/viewer/2022082200/55cf970e550346d0338f837e/html5/thumbnails/23.jpg)
Error Handling
Tujuan lain yang ingin dicapai adalah bagaimana menangani
kesalahan, terutama kgsalahan baca, yang ditemui dalam
operasi I/O.
Transfer Sinkron vs Asinkron
Masalah transfer data asinkron atau sinkron merupakan
pertimbangan lainnya yang penting dalam perancangan
perangkat lunak sistem I/O.
Shareable vs Dedicated Device
Hal terakhir yang perlu dipertimbangkan dalam perancangan
perangkat lunak sistem I/O adalah apakah suatu peranti I/O
bersifat shareable atau dedicated.
next
![Page 24: Manajemen Device Pada Sistem Operasi Linux](https://reader035.vdokumen.com/reader035/viewer/2022082200/55cf970e550346d0338f837e/html5/thumbnails/24.jpg)
Berikut akan dibahas berbagai komponen perangkat lunak sistem
I/O pada sistem komputer, yaitu: interrupt handler, device driver,
dan kernel I/O.
Lapisan Intterupt Handler, Lapisan ini bertujuan untuk
mencapai operasi I/O yang asinkron.
Lapisan device driver membantu perangkat lunak sistem I/O
untuk mencapai ketidaktergantungan dengan keberagaman
peranti I/O.
next
![Page 25: Manajemen Device Pada Sistem Operasi Linux](https://reader035.vdokumen.com/reader035/viewer/2022082200/55cf970e550346d0338f837e/html5/thumbnails/25.jpg)
Lapisan Subsistem I/O atau Kernel I/O mengimplementasi
fungsi-fungsi manajemen sistem I/O yang bersifat umum dan
tidak tergantung pada spesifikasi dan arsitektur dari sistem
komputernya.
Lapisan Pustaka I/O aplikasi mengimplementasi pustaka
pengaksesan I/O atau API (Application Programming
Interface) bagi aplikasi untuk melakukan operasi I/O. Lapisan
ini memudahkan pemrogram aplikasi, karena Pengaksesan.
next
![Page 26: Manajemen Device Pada Sistem Operasi Linux](https://reader035.vdokumen.com/reader035/viewer/2022082200/55cf970e550346d0338f837e/html5/thumbnails/26.jpg)
Scheduling
Salah satu fungsi manajemen device yang melakukan
penjadwalan penggunaan suatu peranti I/O.
Buffering
Yaitu menampung sementara data operasi I/O, baik operasi
baca ataupun tulis di memori utama. Beberapa keuntungan
dari mekanisme buffering adalah:
a. Mengatasi Perbedaan Kecepatan antar Peranti I/O.
b. Mengatasi Perbedaan Bandwith Transfer antar Peranti I/O
c. Mempertahankan Semantik Penyalinan Data
Manajemen Device
![Page 27: Manajemen Device Pada Sistem Operasi Linux](https://reader035.vdokumen.com/reader035/viewer/2022082200/55cf970e550346d0338f837e/html5/thumbnails/27.jpg)
Caching. Secara umum, pengaksesan peranti I/O lebih lambat
dibanding pengaksesan memori utama. Pengaksesan yang
terlalu sering terhadap peranti I/O akan memperlambat
eksekusi proses secara keseluruhan.
Spooling. Kebanyakan pemakaian peranti I/O pada komputer
bersifat ekskusif, yaitu peranti I/O hanya dapat melayani satu
tugas pada suatu waktu.
Device Reservation. Karena kebanyakan pemlkaian peranti
I/O bersifat eksklusif maka kernel I/O juga harus memastikan
selama pengaksesan peranti I/O oleh suatu prosesf tidak ada
intervensi dari proses lainnya.
next