[]

deadlock detection matrices?
bana şunun mantığını anlatabilecek biri var mı?
i.imgur.com
diyelim ki matrisler şöyle verildi. deadlock olup olmayacağına nasıl karar veriyoruz?
i.imgur.com

diyelim ki matrisler şöyle verildi. deadlock olup olmayacağına nasıl karar veriyoruz?

elinde kalan kaynaklara bakiyorsun: 2 1 0 0
R matrisinde en alttaki prosesin ihtiyacini karsilayabilirsin bununla.. veriyorsun ona ve isi bitince elindekileri de geri veriyor sana..
yani elinde kalan kaynaklar su hale geliyor: 2 2 2 0
elinde 4. kaynaktan kalmadigi icin ilk prosesin ihtiyacini karsilayamiyorsun o yuzden ikinciye veriyorsun ne istiyorsa ve isi bitince geri aliyorsun..
geri aldiktan sonra elindeki kaynaklar: 4 2 2 1
ilkine veriyorsun ne istiyorsa ve tum prosesler tamamlanabiliyor boylece..
deadlock denen durum ise elinde kalan kaynaklarla bu anlattigim sekilde cozemiyorsan gerceklesiyor.. mesela ilk adim icin 3. prosesin istek durumu 2 1 0 0 yerine herhangi bir kaynaktan daha fazla olsaydi deadlock gerceklesecekti.. yani kaynak alinmis prosesler tarafindan ama proses sonlanmadan geri alamiyorsun kaynaklari.. o yuzden hicbirinin istegini gerceklestiremiyorsun elinde kaynak sayisi yeterli olmadigindan ve kilitleniyor sistem..
R matrisinde en alttaki prosesin ihtiyacini karsilayabilirsin bununla.. veriyorsun ona ve isi bitince elindekileri de geri veriyor sana..
yani elinde kalan kaynaklar su hale geliyor: 2 2 2 0
elinde 4. kaynaktan kalmadigi icin ilk prosesin ihtiyacini karsilayamiyorsun o yuzden ikinciye veriyorsun ne istiyorsa ve isi bitince geri aliyorsun..
geri aldiktan sonra elindeki kaynaklar: 4 2 2 1
ilkine veriyorsun ne istiyorsa ve tum prosesler tamamlanabiliyor boylece..
deadlock denen durum ise elinde kalan kaynaklarla bu anlattigim sekilde cozemiyorsan gerceklesiyor.. mesela ilk adim icin 3. prosesin istek durumu 2 1 0 0 yerine herhangi bir kaynaktan daha fazla olsaydi deadlock gerceklesecekti.. yani kaynak alinmis prosesler tarafindan ama proses sonlanmadan geri alamiyorsun kaynaklari.. o yuzden hicbirinin istegini gerceklestiremiyorsun elinde kaynak sayisi yeterli olmadigindan ve kilitleniyor sistem..
- buzzlightyear
(07.02.13 02:59:20)
1