E N D
Sistemoperasipertemuan 13 Prodi PendidikanTeknikInformatika dan Komputer JurusanTeknikInformatika FakultasTeknik UNM
I/O dan Disk PerangkatKerasI/O Secaraumum, terdapatbeberapajenissepertidevicepenyimpanan (disk, tape), transmission device (network card, modem), danhuman-interface device (screen, keyboard, mouse). DevicetersebutdikendalikanolehinstruksiI/O. Alamat-alamat yang dimilikiolehdeviceakandigunakanolehdirect I/O instructiondanmemory-mapped I/O.
Polling Busy-waiting/ pollingadalahketikahostmengalamiloopingyaitumembaca status register secaraterus-menerussampai status busydi-clear. Padadasarnyapollingdapatdikatakanefisien. Akantetapi polling menjaditidakefisienketikasetelahberulang-ulangmelakukanlooping, hanyamenemukansedikitdevice yang siapuntuk men-service, karena CPU processing yang tersisabelumselesai.
Interupsi • MekanismeDasarInterupsi Ketika CPU mendeteksibahwasebuahcontrollertelahmengirimkansebuahsinyalkeinterruptrequest line (membangkitkansebuahinterupsi), CPU kemudianmenjawabinterupsitersebut (jugadisebutmenangkapinterupsi) denganmenyimpanbeberapainformasimengenaistateterkini CPU--contohnyanilaiinstruksipointer, danmemanggilinterrupt handler agar handlertersebutdapatmelayanicontrollerataualat yang mengiriminterupsitersebut.
PenyebabInterupsi Interupsidapatdisebabkanberbagaihal, antara lain: • Exception • Page • fault,
DMA DMA adalahsebuahprosesorkhusus (special purpose processor) yang bergunauntukmenghindaripembebanan CPU utamaoleh program I/O (PIO).
Transfer DMA Tigalangkahdalam transfer DMA: Prosesormenyiapkan DMA transfer denganmenyediakan data-data daridevice, operasi yang akanditampilkan, alamatmemori yang menjadisumberdantujuan data, danbanyaknya byte yang di transfer. DMA controllermemulaioperasi (menyiapkan bus, menyediakanalamat, menulisdanmembaca data), sampaiseluruhbloksudahdi transfer. DMA controllermeng-interupsiprosesor, dimanaselanjutnyaakanditentukantindakanberikutnya.
Kernel I/O Subsystem • Buffering Bufferadalah area memori yang menyimpan data ketikamerekasedangdipindahkanantaraduadeviceatauantaradevicedanaplikasi. • Caching Sebuahcacheadalahdaerahmemori yang cepat yang berisikan data kopian. Akseskesebuahkopian yang di-cachedlebihefisiendaripadaakseske data asli. Sebagaicontoh, instruksi-instruksidariproses yang sedangdijalankandisimpankedalam disk, danter-cacheddidalammemoriphysical, dankemudiandicopylagikedalamcache secondary and primarydari CPU.
Perbedaanantara buffer dan ache buffer Perbedaanantarasebuahbufferdan ache adalahbufferdapatmenyimpansatu-satunyainformasidatanyasedangkansebuah cache secaradefinisihanyamenyimpansebuah data darisebuahtempatuntukdapatdiakseslebihcepat.
Cara MeningkatkanEfisiensi I/O Menurunkanjumlahalihkonteks. Mengurangijumlahpengkopian data kememoriketikasedangdikirimkanantaradevicedanaplikasi. Mengurangifrekuensiinterupsi, denganmenggunakanukuran transfer yang besar, smart controller, danpolling. Meningkatkanconcurrencydengancontrolleratauchannel yang mendukung DMA. Memindahkankegiatan processing keperangkatkeras, sehinggaoperasikepadadevice controllerdapatberlangsungbersamaandengan CPU. Menyeimbangkanantarakinerja CPU, memory subsystem, bus, danI/O.