Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
1
INTERPROCESS COMMUNICATION
Permasalahan: Penyampaian informasi antar proses Pengaturan proses agar tidak saling menghalangi Proper sequencing bila terjadi dependencies RACE CONDITION dua proses mengakses shared memory pada saat yang bersamaan
2
Contoh: spooler directory pada printer
3
INTERPROCESS COMMUNICATION
CRITICAL REGION Bagian program dimana shared memory diakses Mutual Exclusion: mekanisme untuk mencegah suatu proses mengakses resouce yang sedang dipakai oleh preses lain
4
INTERPROCESS COMMUNICATION
Empat kondisi agar terjadi mutual exclusion: Tidak ada dua proses yang berada di critical region pada saat yang bersamaan Tidak ada asumsi mengenai kecepatan dan jumlah CPU Tidak ada proses yang berada di luar critical region menghalangi (blocking) proses yang lain Tidak ada proses yang menunggu selamanya untuk masuk critical region
5
Mutual exclusion using critical regions
6
MUTUAL EXCLUSION DENGAN BUSY WAITING
Disabling Interrupt Proses mematikan (disable) semua interrupt setelah memasuki critical region dan menghidupkan kembali (re-enable) interrupt tersebut sebelum meninggalkannya disabling interrupt tidak sebaiknya dilakukan oleh user process Lock Variables Shared (lock) variables, awalnya diset 0 Jika lock = 0, set lock = 1, kemudian masuk critial region Jika lock = 1, tunggu sampai lock = 0 problem: race condition
7
MUTUAL EXCLUSION DENGAN BUSY WAITING
Strict Alternation (a) Process 0. (b) Process 1.
8
MUTUAL EXCLUSION DENGAN BUSY WAITING
Peterson’s Solution
9
MUTUAL EXCLUSION DENGAN BUSY WAITING
TSL Instruction (Test and Set Lock)
10
Sleep and Wakeup Sleep: system call yang menyebabkan proses yang memanggil diblock, atau ditunda (suspended) Wakup: system call yang menyebabkan proses dibangunkan, atau menjadi ready
11
Producer-Consumer Problem (Bounded-Buffer Problem) with fatal race condition
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.