27
MANAJEMEN DEVICE

Manajemen Device Pada Sistem Operasi Linux

Embed Size (px)

DESCRIPTION

Manajemen Device Pada Sistem Operasi Linux

Citation preview

Page 1: Manajemen Device Pada Sistem Operasi Linux

MANAJEMEN DEVICE

Page 2: Manajemen Device Pada Sistem Operasi Linux

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

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

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

Organisasi fisik dari sistem komputer

Page 6: Manajemen Device Pada Sistem Operasi Linux

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

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

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

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

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

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

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

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

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

Contoh pengalamatan peranti I/O

Page 16: Manajemen Device Pada Sistem Operasi Linux

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

next

Page 18: Manajemen Device Pada Sistem Operasi Linux

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

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

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

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

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

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

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

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

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

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