Kilitlenme Önleme ve Kaçınma Nedir?
Bilgisayar sistemlerinde birden fazla işlemin birbirlerinin kaynaklarını serbest bırakmalarını bekleyerek sonsuz döngüye girmesi durumuna kilitlenme (deadlock) denir. Kilitlenmeyi önleme ve kaçınma teknikleri, bu durumun oluşmasını engellemek veya oluştuğunda sistemin toparlanmasını sağlamak için kullanılır.
Kilitlenme önleme, kilitlenmenin oluşmasını engellemek için kaynak tahsisini kısıtlar; kilitlenmeden kaçınma ise sistemin güvenli bir durumda kalmasını sağlayarak kilitlenmeyi önler.
Adım adım çözümlü örnekler
Basit bir kilitlenme örneği veriniz.
1. İşlem A, Kaynak X'i alır. 2. İşlem B, Kaynak Y'yi alır. 3. İşlem A, Kaynak Y'yi ister. 4. İşlem B, Kaynak X'i ister. Sonuç: Hem A hem de B birbirlerinin istediği kaynağı tuttuğu için kilitlenme oluşur.
Kilitlenme önleme ve kaçınma arasındaki temel fark nedir?
Önleme, kilitlenmenin oluşmasını baştan engellerken (örneğin, kaynakların kullanım sırasını belirleyerek). Kaçınma ise sistemin her zaman güvenli bir durumda kalmasını sağlayarak kilitlenme olasılığını azaltır (örneğin, kaynak tahsisini dikkatli yaparak).
Bilgi kartları
Mini test
S1.Aşağıdakilerden hangisi kilitlenmenin oluşması için gerekli dört koşuldan biri DEĞİLDİR?
S2.Kilitlenmeden kaçınma için kullanılan en bilinen algoritma hangisidir?
S3.Kilitlenme önleme, kilitlenmeyi nasıl engellemeye çalışır?
Sık yapılan hatalar
Kilitlenme önleme ve kaçınma aynı şeydir. — Doğrusu: Kilitlenme önleme, kilitlenmenin oluşmasını engeller; kilitlenmeden kaçınma ise sistemin güvenli kalmasını sağlayarak kilitlenmeyi önler.
Banka Algoritması kilitlenmeyi tespit ettikten sonra çözüm üretir. — Doğrusu: Banka Algoritması, kilitlenmenin oluşmasını engellemek için kaynak tahsisini önceden kontrol eder ve sistemi güvenli durumda tutar.
Sıkça sorulan sorular
Kilitlenme oluştuğunda ne olur?
Kilitlenen işlemler sonsuza kadar bekler, kaynaklar bloke olur ve sistem performansı düşer. Bu durum, sistemin çökmesine veya yanıt vermemesine yol açabilir.
Kilitlenme önleme ve kaçınma hangi durumlarda tercih edilir?
Kilitlenme önleme, kilitlenmenin oluşma olasılığının yüksek olduğu ve kaynakların sık sık paylaşıldığı sistemlerde kullanılır. Kilitlenmeden kaçınma ise daha esnek bir yaklaşım sunar ve özellikle kaynakların öngörülemeyen şekillerde istendiği durumlarda etkilidir.
Gerçek dünyada kilitlenme örnekleri nelerdir?
Veritabanlarında aynı kayda erişmeye çalışan birden fazla işlem, ağ üzerindeki yönlendiricilerin birbirine veri paketleri göndermesi ve birbirlerini beklemesi, hatta iki kişinin dar bir koridorda birbirini geçmeye çalışması gibi durumlar kilitlenmeye benzerlik gösterebilir.