Anahtar Fark: Kilitlenme, süreçlerin kaynakları dairesel bir şekilde beklerken sıkıştığı durumu ifade eder. Öte yandan, açlık bir işlem bir kaynağı süresiz olarak beklediğinde ortaya çıkar. Kilitlenme açlık anlamına gelir, ancak açlık kilitlenme anlamına gelmez.
Bunun basit bir örneği, iki teyp sürücüsü olan bir sistemdir ve iki işlem, her biri bir teyp sürücüsünü işgal eder ve diğerinin daha ileriye gitmesi için gerekli olanı bekler.
Bu dört koşulun hepsinin aynı anda geçerli olması durumunda, kilitlenme vakası durumunun belirtilmesi önemlidir -
- Karşılıklı dışlama - bir kaynak yalnızca bir işlem tarafından kullanılabilir.
- Bekle ve bekle - en az bir kaynağı işgal eden bir işlem başka bir işlem tarafından işgal edilen ek bir kaynak edinmelidir ve bu nedenle bu işlem bu kaynağın serbest bırakılmasını bekler.
- Önlem yok - kaynak sadece görevini tamamladıktan sonra işgal eden süreç tarafından serbest bırakılır.
- Dairesel bekleme - kümelerdeki tüm işlemler kümedeki son işlemi bile içeren diğer işlemler tarafından tutulan bir kaynağı bekliyor.
Daha kötü öncelikli bir süreç olan nevers, kaynağı kendisinden daha iyi öncelikli süreçlerin sürekli akışı nedeniyle alır ve bu nedenle sürecin sonsuza dek beklemesi gerekebilir. Açlıktan kurtulmanın çözümü, bağımsız bir yöneticinin kaynak tahsislerini yönetmesi ve her sürecin bir zamanda kaynağı almasını sağlamasıdır. Açlığı önlemek için rastgele ve kontrolsüz seçimlerden veya rekabetten kaçınılmalıdır. Kilitlenme açlık anlamına gelir, ancak açlık kilitlenme anlamına gelmez.
Bu nedenle, kilitlenme ve açlık birbirinden farklıdır. Kilitlenme, kümedeki işlemlerin hiçbiri, gerekli kaynakların başka bir işlem tarafından doldurulması nedeniyle ileriye gidemediğinde meydana gelir. Öte yandan, açlık, bir işlemin ihtiyaç duyduğu kaynağı elde etmek için belirsiz bir süre beklemesi ile ortaya çıkar.
Kilitlenme ve Açlık arasındaki karşılaştırma:
çıkmaz | Açlık | |
Tanım | Kilitlenme, kümedeki işlemlerin hiçbiri, gerekli kaynakların başka bir işlem tarafından doldurulması nedeniyle ileriye gidemediğinde gerçekleşir. | Açlık, bir süreç ihtiyaç duyduğu kaynağı elde etmek için belirsiz bir süre beklediğinde meydana gelir. |
Diğer adı | Dairesel bekleme | Yaşadı kilit |
Ortaya çıkan koşullar | Eşzamanlı olarak ortaya çıkan bu dört koşul - karşılıklı dışlanma, beklet ve bekle, ön ödemesiz ve dairesel zekâ | Kontrolsüz kaynak yönetimi Süreç önceliklerini kesin olarak uygulamak Kaynakların kıtlığı |
Kaçınma / Önleme Teknikleri |
|
|
İlerleme | Hiçbir işlem ilerleme kaydedemez | Mağdur sürecinden ayrı olarak, diğer süreçler ilerleyebilir veya ilerleyebilir |
Bitirme | Dış müdahale gerektirir | Harici müdahale gerektirebilir veya gerektirmeyebilir |