no.5 sisop

6
5. Jelaskan perbedaan konsep penyelesaian producer-consumer problem dengan semaphore, monitor, dan message-passing. Dalam penjelasan ini kita harus tau dulu apa itu Masalah di Producer-Consumer yaitu: Masalah Producer-Consumer • Situasi Umum: – Satu atau lebih producer membangkitkan data & menempatkannya dalam suatu buffer – Consumer tunggal mengambil item keluar buffer satu pada satu waktu – Hanya satu producer atau consumer yang boleh mengakses buffer pada satu waktu • Masalahnya: – Pastikan bahwa Producer tidak dapat menambahkan data ke dalam buffer yang penuh & comsumer tidak dapat menghapus data dari buffer kosong Buffer Dalam Producer/Consumer Problem Oleh karena itu mari kita bahas arti dari Semaphore, monitor dan message- passing. 1. Semaphore: – Suatu nilai integer (bilangan bulat) yang digunakan untuk pensinyalan (signalling) antar proses. • Hanya tiga operasi dapat dikerjakan pada suatu semaphore, semuanya bersifat atomik: – initialize – Decrement (semWait) – increment (semSignal)

Upload: nakashima-akira

Post on 28-Nov-2015

32 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: no.5 Sisop

5. Jelaskan perbedaan konsep penyelesaian producer-consumer problem dengan semaphore, monitor, dan message-passing.Dalam penjelasan ini kita harus tau dulu apa itu Masalah di Producer-Consumer yaitu:

Masalah Producer-Consumer• Situasi Umum:– Satu atau lebih producer membangkitkan data &menempatkannya dalam suatu buffer– Consumer tunggal mengambil item keluar buffer satupada satu waktu– Hanya satu producer atau consumer yang bolehmengakses buffer pada satu waktu• Masalahnya:– Pastikan bahwa Producer tidak dapat menambahkandata ke dalam buffer yang penuh & comsumer tidakdapat menghapus data dari buffer kosong

Buffer Dalam Producer/Consumer Problem

Oleh karena itu mari kita bahas arti dari Semaphore, monitor dan message-passing.

1. Semaphore:– Suatu nilai integer (bilangan bulat) yangdigunakan untuk pensinyalan (signalling)antar proses.• Hanya tiga operasi dapat dikerjakan padasuatu semaphore, semuanya bersifatatomik:– initialize– Decrement (semWait)– increment (semSignal)

Page 2: no.5 Sisop

Proses Menggunakan Semaphore

Contoh penggunaan Semaphore Dalam menyelesaikan Produce-Consumen Problem

Scenario yang memungkinkan

Page 3: no.5 Sisop

Penyelesaian dalam Semaphore

Page 4: no.5 Sisop

2.Monitor

• Monitor merupakan suatu konsepsibahasa pemrograman yang menyediakanfungsi sama dengan semaphore & lebihmudah dikontrol.• Diimplementasikan dalam sejumlahbahasa pemrograman, termasuk– Concurrent Pascal, Pascal-Plus,– Modula-2, Modula-3, dan Java

Karakteristik Utama• Variabel data lokal hanya dapat diaksesoleh monitor• Proses memasuki monitor denganmenjalankan salah satu prosedurnya• Hanya satu proses yang boleh berjalan(executing) dalam monitor pada satuwaktu

Struktur Monitor

Page 5: no.5 Sisop

Contoh Monitor Dalam Menyelesaikan Produce-Consumen

Page 6: no.5 Sisop

3.Message Passing• Fungsi aktual dari message passingnormalnya disediakan dalam bentukpasangan primitif:– send (destination, message)– receive (source, message)

Message Producer-Consumer