no.5 sisop
TRANSCRIPT
![Page 1: no.5 Sisop](https://reader035.vdocuments.pub/reader035/viewer/2022071920/55cf9a6d550346d033a1a7a0/html5/thumbnails/1.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022071920/55cf9a6d550346d033a1a7a0/html5/thumbnails/2.jpg)
Proses Menggunakan Semaphore
Contoh penggunaan Semaphore Dalam menyelesaikan Produce-Consumen Problem
Scenario yang memungkinkan
![Page 3: no.5 Sisop](https://reader035.vdocuments.pub/reader035/viewer/2022071920/55cf9a6d550346d033a1a7a0/html5/thumbnails/3.jpg)
Penyelesaian dalam Semaphore
![Page 4: no.5 Sisop](https://reader035.vdocuments.pub/reader035/viewer/2022071920/55cf9a6d550346d033a1a7a0/html5/thumbnails/4.jpg)
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](https://reader035.vdocuments.pub/reader035/viewer/2022071920/55cf9a6d550346d033a1a7a0/html5/thumbnails/5.jpg)
Contoh Monitor Dalam Menyelesaikan Produce-Consumen
![Page 6: no.5 Sisop](https://reader035.vdocuments.pub/reader035/viewer/2022071920/55cf9a6d550346d033a1a7a0/html5/thumbnails/6.jpg)
3.Message Passing• Fungsi aktual dari message passingnormalnya disediakan dalam bentukpasangan primitif:– send (destination, message)– receive (source, message)
Message Producer-Consumer