ikh311-03

13
Sistem Operasi IKH311 Komunikasi Antar Proses

Transcript of ikh311-03

Page 1: ikh311-03

Sistem OperasiIKH311

Komunikasi Antar Proses

Page 2: ikh311-03

2

Komunikasi Antar Process

Contoh dua process Mengakses area memory yang sama Race condition

Situasi akhir di memory tergantung kepada bagaimana CPU mengalokasikan waktu

Page 3: ikh311-03

Critical Region

Bagian dari process Mengakses area memory yang sama Potensi menimbulkan Race Condition Dijalankan secara ekslusif antar process Mutual Exclusion

Page 4: ikh311-03

Kondisi Mutual Exclusion

Tidak boleh ada dua proses (atau lebih) berada dalam Critical Region secara simultan

Tidak ada asumsi tentang kecepatan dan jumlah CPU Process yang berada di luar Critical Region tidak boleh

menghalangi process lainnya Tidak boleh ada process yang menunggu terlalu lama (atau

selamanya) untuk masuk Critical Region

Page 5: ikh311-03

Komunikasi Antar Process: Ilustrasi

Jalur kereta api Single-track Hanya boleh ada satu rangkaian kereta pada

saat tertentu

Page 6: ikh311-03

Komunikasi Antar Process

Men-disable interrupt Sebelum masuk Critical Region Harus kembali di-enable setelah selesai Interrupt seharusnya dikelola oleh Sistem

Operasi

Page 7: ikh311-03

Komunikasi Antar Process

Skema Lock Variable Jika nilainya 1

Ada process yang berada dalam Critical Region Periksa nilai, apakah 0, sebelum masuk Critical

Region Masalah yang sama dengan Spooler Directory

Page 8: ikh311-03

Skema Busy Waiting

Model sederhana 2 process Kriteria ke-3 Mutual Exclusion tidak terpenuhi

Page 9: ikh311-03

Peterson's Solution

Model sederhana 2 process

Kriteria ke-3 dipenuhi dengan berlaku 'sopan' pada process yang lain

Page 10: ikh311-03

Sleep dan Wakeup

Masalah lost-signal

Page 11: ikh311-03

Semaphore

E. W. Dijkstra Model jalur kereta api

Special kind of integer Probeer te verlagen, Down, Wait

Jika nilai semaphore == 0, sleep Decrement semaphore by 1

Verhogen, Up, Signal Increment semaphore by 1 Jika ada process yang sleep pada semaphore

tersebut, wake him up

Page 12: ikh311-03

Semaphore

Page 13: ikh311-03

Pustaka

Avi Silberschatz, "Operating System Concepts" http://codex.cs.yale.edu/avi/os-

book/OS8/os8j/index.html Andrew Tanenbaum, "Modern Operating

Systems" http://www.cs.vu.nl/~ast/books/mos2/ Harvey Deitel, "Operating Systems" http://cs.nyu.edu/~yap/classes/os/resources/origin_of_

PV.html tjerdastangkas.blogspot.com/search/label/ikh311