- Perangkat Keras I/O
- Aplikasi Antarmuka I/O
- Kernel I/O Subsystem
- Mengubah I/O Request Menjadi Operasi Perangkat Keras
- Streams
- Performance
Perangkat Keras I/O
- Banyaknya jenis perangkat keras I/O
- Konsep Umum :
Bus (Daisy chain atau shared direct access)
Controller (host adapter)
- Perangkat kontrol instruksi I/O
- Perangkat-perangkat tersebut memiliki alamat, digunakan
Instruksi I/O langsung
Memory-mapped I/O
Jenis Perangkat Keras
- Perangkat penyimpan data
- Perangkat penghubung
- Perangkat antarmuka dengan user
Konsep Umum
- Suatu perangkat berhubungan dengan sistem komputer dengan
- udaraPerangkat tersebut berkomunikasi dengan mesin melalui port
- Struktur komputer yang umum dipakai adalah Daisy Chain
I/O Port Register
- Register Status
- Register Control
- Register Data-in
- Register Data-out
Proses:
- Blocking read system call diberikan pada pendeskripsi data dari data yang sudah terbuka sebelumnya.
- Kode di kernel memeriksa parameter. Dalam proses input, jika data sudah ada di buffer, data dikembalikan ke proses dan permintaan I/O selesai . Contoh: membaca data dari disk untuk di proses.
- Menentukan device yang mengandung data,
- Menerjemahkan nama ke perwakilan device
- Secara fisik memindahkan data dari disk ke buffer
- Mempersiapkan data untuk proses permintaan I/O Mengembalikan kontrol ke proses
- Pembuat CPU melaksanakan kode device-driver
- Memberitahukan ke-tidak efisien-an pada mekanisme penanganan interrupt dalam kernel
- Me-load memory bus sewaktu menyalin data yang dilakukan dicontroller dan physical memory
- Memperkecil jumlah context switch
- Memperkecil jumlah penyalinan data yang dilakukan sewaktu pengoperan data antara device dan aplikasi
- Memperkecil jumlah interrupt dengan menggunakan transfer secara besar-besaran, smart controllers dan polling (jika busywaiting bisa diminimalisir)
- Menambah konkurensi dengan menggunakan DMA controllers atau channels yang telah diketahui untuk meng-offload pennyalin sederhana dari CPU
- Memindahkan proses-proses primitif ke perangkat keras, untuk membuat operasinya dalam device controllers konkuren dengan CPU dan operasi Bus
- Menyeimbangkan CPU, memory subsystem, bus, dan I/O performance, karena kelebihan di salah satu area akan membuat keterlambatan pada yang lain
Tidak ada komentar:
Posting Komentar