Concurrency
Concurrency
Konkurensi ada apad 3 konteks berbeda :
a. Multiple application (multiprogramming)
b. Structured application
c. Operatin-system structure
Masalah yang muncul dalam konkurensi :
- berbagi sumber daya global
- manajemen alokasi sumber daya
- error berhubungan dengan pemrograman sulit untuk ditemukan
Kompetisi yang terjadi diantara proses untuk sumber daya :
a. Mutual Exclusion
Hanya satu program yang diizinkan pada satu waktu
b. Deadlock
Antar program saling berebutan sehingga tidak ada program yang mendapatkan sumber daya
c. Starvation
Antar program saling menunggu akibat takut akan terjadinya collision antar program
Tabel Interaksi Proses
Mekanisme Penyelesaian Konkurensi
a. Semaphore : nilai integer untuk memberikan sinyal antar proses
b. Binary semaphore : semaphore yang hanya bernilai 0 dan 1
c. Mutex : seperti binary semaphore namun digunakan untuk membuka kunci dan menutup kunci
d. Monitor : bahasa pemrograman yang menenkapsulasi variabel, prosedur akses, dan kode
inisialisasi dalam tipe data abstrak
e. Event flag : penggunaaan kata yang digunakan untuk mekanisme sinkronisasi.
f. Mailboxes/messages : cara untuk dua proses saling bertukar informasi dan bersinkronisasi
g. Spinlocks : mekanisme mutual exclusion dimana proses mengeksekusi looping terus menerus
untuk mendeteksi ketersediaan kunci
Langganan:
Posting Komentar
(
Atom
)
Tidak ada komentar :
Posting Komentar