Anda di halaman 1dari 8

DEADLOCK

Dalam lingkungan multiprogramming beberapa


proses mungkin akan memperebutkan sejumlah
resource yang jumlahnya terbatas. Jika sebuah
proses
membutuhkan
sebuah
resource,
sementara resource ini sedang digunakan atau
tidak tersedia maka proses akan memasuki
tahap wait. Jika sejumlah job berada dalam
status wait dan tidak pernah berubah statusnya
karna resources yang dibutuhkan sedang
digunakan oleh job lain situasi ini akan dikenal
dengan istilah Deadlock

Sebuah proses harus memesan (request)


sebuah job sebelum menggunakannya
Sebuah job harus merelease resource
tersebut setelah menggunakannya
Sebuah proses tidak dapat merequest
sejumlah resource jika resource yang
tersedia lebih kecil dari jumlah permintaan

Pada keadaan normal sebuah proses akan


menggunakan resource sesuai dengan
langkah langkah berikut :
Request
Wait
Release

Kumpulan proses akan berada dalam


kondisi deadlock jika setiap proses
menunggu sebuah event yang hanya
dihasilkan oleh job lain.
Ketentuan yang berlaku saat proses:
Satu sumberdaya (resource) hanya boleh
melayani satu proses.
Satu proses boleh menggunakan lebih
dari satu sumber daya.

Lambang yang digunakan

1. Proses
2. Sumber daya (resource)
A

A = Nama Proses

R = Nama Resource

A Menggunakan Resource R

A Menunggu Resource R

Ex:
Sebuah sistem terdiri dari tiga Proses (A,B,C) dan tiga
Resource (R,S,T)
Proses yang akan dilakukan adalah :
1.A Request R
2.B Request S
3.C Request T
4.A Request S
5.B Request T
6.C Request R
Gambarkan keadaan proses dan tentukan apakah terjadi
deadlock atau tidak.

Anda mungkin juga menyukai