Dokumen tersebut membahas tentang deadlock pada sistem sumber daya komputer. Deadlock terjadi ketika beberapa proses menunggu sumber daya yang sudah dikuasai proses lain, sehingga tidak ada proses yang dapat melanjutkan eksekusinya. Dokumen tersebut menjelaskan kondisi-kondisi yang memungkinkan terjadinya deadlock, metode-metode untuk mencegah, menghindari, dan mendeteksi deadlock, serta algoritma-algoritma yang
2. Setiap tipe sumber daya R1 mempunyai beberapa
anggota Wi. Setiap proses yang menggunakan
sumber daya menjalankan urutan operasi
sebagai berikut:
Meminta (request) : meminta sumber daya
Mamakai (use) : memakai sumber daya
Melepaskan (release): melepaskan sumber
daya
3. 1. Kondisi yang diperlukan
a. Mutual Exclusion
b. Genggam Dan Tunggu (Hold And Wait)
c. Non – Preemption
d. Menunggu secara Sirkuler (circular wait)
2. Resource Allocation Graph
faktor dasar dari Resource Allocation Graph menunjukan
bahwa :
a. Apabila pada Graph tidak terdapat siklus maka tidak ada
proses dalam sistem yang deadlock
b. Apabila pada Graph terdapat siklus sistem kemungkinan
Deadlock dengan ketentuan :
- jika pada setiap tipe sumber daya hanya terdapat satu
anggota maka terjadi deadlock
- jika pada setiap tipe sumber daya terdapat beberapa anggota maka
kemungkinan terjadi deadlock
4. Terdapat tiga metode untuk menangani
permasalahan deadlock yaitu :
1. Menggunakan protokol untuk menjamin
bahwa sistem tidak pernah memasuki status
deadlock
2. Mengijinkan sistem memasuki status deadlock
dan kemungkinan memperbaikinya
3. Mengabaikan permasalahan dan seakan – akan
deadlock tidak pernah terjadi pada sistem.
5. Untuk mencegah deadlock dapat dilakukan
dengan meniadakan salah satu dari syarat
perlu sebagai berikut :
1. Mencegah Mutual Exclusion
2. Mencegah Hold and Wait
3. Mencegah Non – Preemption
4. Mencegah kondisi Menunggu Sirkular
7. 1. Satu anggota untuk setiap Tipe Sumber Daya
jika semua sumber daya mempunyai satu anggota, kita dapat
menentukan algoritma mendeteksi deadlock menggunakan
bentuk Resource Allocation Graph yang disebut wait for graph.
2. Beberapa anggota untuk setiap Tipe Sumber Daya
untuk tipe sumber daya yang mempunyai beberapa anggota
digunakan algoritma yang sejenis dengan algoritma banker
dengan struktur daya seperti dibawah ini :
a. Available
b. Allocation
c. Request
3. Penggunaan Algoritma Deteksi
untuk menjawab kapan dan berapa sering menggunakan
algoritma deteksi,hal ini tergantung pada :
a. seberapa sering terjadi deadlock
b. berapa proses yang perlu dilakukan rollback
8. 1. Terminasi Proses
untuk memperbaiki deadlock dengan terminasi proses,
dapat digunakan salah satu dari dua metode dibawah ini:
a. menghentikan (abort) semua proses yang deadlock
b. menghentikan satu proses setiap waktu sampai siklus
deadlock hilang
2. Menunda Sumber Daya
jika penundaan diperlukan untuk mengilangkan deadlock ,
terdapat tigal hal yang perlu diperhatikan :
a. Pilihlah korban (sumber daya) yang mempunyai biaya
minimal
b. lakukan rollback yaitu memulai kembali (restart) proses
pada state yang selamat
c. harus dijamin starvation tidak akan terjadi karena
kemungkinan beberapa proses selalu terpilih sebagai korban
termasuk jumlah rollback sebagai faktor biaya.
9. Untuk menangani deadlock dilakukan kombinasi
dari tiga algoritma dasar yaitu :
1. Mencegah Deadlock
2. Menghindari Deadlock
3. Mendeteksi Deadlock
Kombinasi ketiga algoritma ini memungkinkan
penggunaan yang optimal untuk setiap sumber
daya pada sistem.