Minggu, 16 Oktober 2011

SISTEM I/O

Sistem I/O pada Linux (1)
• Semua device drivers dianggap sebagai file biasa
– Perangkat merupakan objek pada sistem file
– Mengakses channel suatu perangkat ~ membuka file
• 3 kelas perangkat:
– Block devices
– Character devices
– Network devices

F3191 – Sistem I/O
Page 3
Sistem I/O pada Linux (2)
• Block Devices
– mengakses blok data secara random, contoh: hard
disk, floppy disk, CD-ROM
– Biasanya digunakan untuk menyimpan sistem file
– Akses langsung dapat dilakukan untuk tujuan tertentu,
mis. membuat atau memperbaiki sistem file yang
disimpan pada device, aplikasi basisdata
• Character Devices
– Mencakup semua perangkat I/O lainnya (kecuali
perangkat jaringan)
– Tidak perlu mengimplementasikan semua
fungsionalitas file
IF-ITB/HY/25-Aug-03
IF3191 – Sistem I/O
Page 4
Block Devices (1)
• Menyediakan antarmuka
utama untuk semua disk
pada sistem
• Terdiri dari 2 komponen:
– Block buffer cache
– Request manager
• Block Buffer Cache
– Fungsi:
• sebagai pool buffer untuk I/O aktif, dan
• sebagai cache untuk I/O yang telah selesai
– Terdiri dari 2 bagian:
• Buffer, sekumpulan page yg dialokasikan secara dinamis dari pool
main memori kernel
• Buffer heads, berisi deskripsi buffer; satu untuk tiap buffer.

Block Devices (2)
• Block Buffer Cache (lanj.)
– Buffer heads berisi informasi buffer id, yang terdiri dari
3 tuple:
• block device yang ditangani,
• offset data dalam blok device tsb, dan
• ukuran buffer
– Buffer juga terdapat pada beberapa list, a.l:
• List buffer bersih, kotor, atau yang terkunci
• Freelist, yang diakses bila suatu file dihapus, atau diisi oleh
fungsi refill_freelist utk menambah jumlah buffer bebas
– Buffer management menangani penulisan buffer
kotor ke disk.

IF3191 – Sistem I/O
Page 6
Block Devices (3)
• Request Manager
– Mengelola penulisan/pembacaan isi buffer dari/ke block
device driver
– Fungsi ll_rw_block melakukan
pembacaan/penulisan tingkat rendah
– I/O request yang belum ditangani disimpan dalam
struktur request; satu per block-device driver
– Menggunakan algoritma penjadwalan C-SCAN
(elevator)
– Melakukan penggabungan beberapa request yang
berdampingan posisinya pada blok device
– Dapat dilakukan cache-bypassing

Character Devices
• Character device driver yang didaftarkan pada kernel
Linux harus mencantumkan fungsi I/O yang
diimplementasikan
• Kernel tidak melakukan preprocessing terhadap
permintaan baca/tulis ke character device → dilakukan
sendiri oleh perangkat ybs.
• Untuk terminal device, terdapat interface standard berupa
struktur yang disebut tty_struct
– Menyediakan buffer dan flow control untuk aliran data dari
terminal device dan mengalirkan data ke line discipline
– Line discipline adalah interpreter utk informasi dari terminal
device



MODUL DAN FUNGSI MODUL I/O

ModulI/O
1. Interface denganCPU danmemori
2. Interface kesatuataulebihperipheral

􀂄FungsiModulI/O :
1. Control danTiming
2. KomunikasiCPU
3. Device untukkomunikasi
4. Data Buffering
5. DeteksiError

METODE OPERASI SISTEM I/O

1. I/O Terprogram
2. I/O Instruksi(Demand Driven)
3. Direct Memory Access (DMA)


INTERFACING I/O
Suatualatyang digunakanauntukmenghubungkansuatupiranatidenganCPU melaluiBUS

FungsiUmum:
Mensinkronkandata transfer antaraCPU danpirantiI/O

INTERFACING I/O

FungsiDetail :

1. Penyediastatus pirantiI/O bagiCPU
2. Memilikikemampuaninterupsi/ DMA
3. MampumentransferinstruksiCPU kepiranti
4. Mampuberfungsisebagaibuffer storage data transfer
5. Mampumelakukanpengujiankesamaandata
6. Mampumendecodedanmengencodedata
7. Memilikifasilitaskhusus:
Konversidata paralelkeserial, Encoding karakterF1,F2
BACKSPACE, DELETE danlain-lain
8. Menyediakansinyalstatus operasi

SISTEM PROSESOR I/

General Purpose komputeryang berisisejumlahsaluranDMA, CPU tersendiridanmenjalankannyasecaraparalel

Fungsi :

Sebagaipirantifront end yang menanganisetiapaspekI/O danmenyediakanpengendaliI/O khususyang disebutI/O Channel.



Struktur Sistem Operasi

Mesin Virtual

Sebuah mesin virtual (Virtual Machine) menggunakan misalkan terdapat sistem program => control program yang mengatur pemakaian sumber daya perangkat keras. Control program = trap System call + akses ke perangkat keras. Control program memberikan fasilitas ke proses pengguna. Mendapatkan jatah CPU dan memori. Menyediakan interface "identik" dengan apa yang disediakan oleh perangkat keras => sharing devices untuk berbagai proses.
Mesin Virtual (MV) (MV) => control program yang minimal MV memberikan ilusi multitasking: seolah-olah terdapat prosesor dan memori ekslusif digunakan MV. MV memilah fungsi multitasking dan implementasi extended machine (tergantung proses pengguna) => flexible dan lebih mudah untuk pengaturan. Jika setiap pengguna diberikan satu MV => bebas untuk menjalankan OS (kernel) yang diinginkan pada MV tersebut. Potensi lebih dari satu OS dalam satu komputer. Contoh: IBM VM370: menyediakan MV untuk berbagai OS: CMS (interaktif), MVS, CICS, dll. Masalah: Sharing disk => OS mempunyai sistem berkas yang mungkin berbeda. IBM: virtual disk (minidisk) yang dialokasikan untuk pengguna melalui MV.
Konsep MV menyediakan proteksi yang lengkap untuk sumberdaya sistem, dikarenakan tiap MV terpisah dari MV yang lain. Namun, hal tersebut menyebabkan tidak adanya sharing sumberdaya secara langsung. MV merupakan alat yang tepat untuk penelitian dan pengembangan sistem operasi. Konsep MV susah untuk diimplementasi sehubungan dengan usaha yang diperlukan untuk menyediakan duplikasi dari mesin utama.

System Generation (SYSGEN)

Sistem operasi dirancang untuk dapat dijalankan di berbagai jenis mesin; sistemnya harus di konfigurasi untuk tiap komputer. Program SYSGEN mendapatkan informasi mengenai konfigurasi khusus dari sistem perangkat keras.

Tidak ada komentar:

Posting Komentar