Ölümcül Kilitlenme (Deadlock)

Slides:



Advertisements
Benzer bir sunumlar
İşlemci Zaman Planlaması
Advertisements

STRİNG FONKSİYONLARI.
BPR151 ALGORİTMA VE PROGRAMLAMA - I
Kofaktör Matrisler Determinantlar Minör.
İşlem Yönetimi (Semafor ve Kilitlenme)
Görev Yönetimi GÖREV bir programın işletimi sırasında aldığı addır.
Bölüm 3 – Yapısal Programlama
Chapter 8: Deadlocks (ölümcül kilitlenmeler)
Yapısal Program Geliştirme – if, if-else
CEIT 101 Teorik Emrah Soykan - Konu 2 -.
CEIT 101 Teorik Vasfi Tuğun - Konu 2 -.
BÖLÜM 8 DEADLOCKS.
S OYUT M ODELLER (A BSTRACT M ODELS ) Murat Olcay ÖZCAN Trakya Üniversitesi Bilgisayar Mühendisliği Anabilim Dalı.
Bilgisayar Programlama (Yrd. Doç. Dr. İbrahim ASRİ)
ÇİZGELERİN GÖSTERİMİ Yılmaz KILIÇASLAN. Sunu Planı Bu derste, çizgelerin bilgisayarda gösterimine ilişkin iki standart yaklaşımı inceleyeceğiz.
İŞLETİM SİSTEMLERİ Öğr. Gör. S.Serkan TAN.
MATRİS-DETERMİNANT MATEMATİK.
Dosya, Klasör ve Sürücüler
ÇİZGELERİN GÖSTERİMİ Yılmaz KILIÇASLAN.
Tam Sayılarda Çarpma İşlemi
PEER SUPPORT TEAM.
Bolvadin Meslek Yüksekokulu1 BİLGİSAYARIN DONANIM YAPISI HAZIRLAYAN ERDOĞAN BAYRAK.
Aşağıda bir tam elma eş parçalara
HESAP TABLOSU PROGRAMLARI
İşlem Yönetimi (Kilitlenme)
BASİT KESİR NEDİR ? BİR BÜTÜNÜN EŞİT OLARAK AYRILMIŞ HER BİR PARÇASINA KESİR DENİR. BUNU ; MATEMATİKTE RAKAMLARLA VE ŞEKİLLERLE İFADE EDERİZ.
Öğretmenin; Adı Soyadı :
Web Tarayıcıları ve Arama Motorları
DERS 8 (ÖLÜMCÜL KİTLENMELER)
Dosya, Klasör ve Sürücüler
Paydası bir basamaklı olan kesirler basit kesirler
Bölüm 13: I/O Sistemleri Giriş/Çıkış Donanımı
BİL İŞLETİM SİSTEMLERİ
GÖREV YÖNETİMİ (PROCESS – TASK) (SERVER İŞLETİM SİSTEMİ TARAFLI)
Dosya, Klasör ve Sürücüler
Temel Bilgi Teknolojilerinin Kullanımı Öğr.Gör. Abdullah ŞENER.
Bilgisayar Grafikleri Ders 3: 2B Dönüşümler
Dosya, Klasör ve Sürücüler
BİLGİSAYAR MİMARİLERİ 7.Hafta: Çoklu-Çevrim İşlemci
BİLGİSAYAR MİMARİLERİ 3.Hafta: Bellek Hiyerarşisi-1
ENDÜSTRİYEL GÖMÜLÜ BİLGİSAYAR SİSTEMLERİ
Kapasite Birimleri Depolama Birimleri
Adım Adım Algoritma.
GÖREV YÖNETİMİ (PROCESS – TASK) (SERVER İŞLETİM SİSTEMİ TARAFLI)
TAM SAYILARLA ÇARPMA VE BÖLME İŞLEMLERİ
n bilinmeyenli m denklem
NORTON GHOST. O Windows isletim sistemi kullananlar bilirler.Kısa bir sure sonra windows yavaslamaya, hata mesajları vermeye baslar. Tek care var o da.
O R T L G İ M A A Ve Akış şemaları.
Web Tarayıcıları ve Arama Motorları
İnönü Üniversitesi Bilgisayar Mühendisliği Bölümü
Kapasite Birimleri Depolama Birimleri
Kapasite Birimleri Depolama Birimleri
Dosya, Klasör ve Sürücüler
ÇOK BOYUTLU İŞARET İŞLEMENİN TEMELÖZELLİKLERİ
Bilgisayar Donanım ve Sistem Yazılımı
MATEMATİKTE TAM SAYILARI ÖĞRENİYORUZ
5.1 POLİNOMİNAL REGRESSİYON
TAM SAYILAR.
Web Tarayıcıları ve Arama Motorları
Dosya Yönetimi Dosya, Klasör ve Sürücüler.
PROGRAMLAMAYA GİRİŞ FORTRAN 77.
İleri Algoritma Analizi
İşletim Sistemleri (Operating Systems)
İşletim Sistemleri (Operating Systems)
İşletim Sistemleri (Operating Systems)
İşletim Sistemleri (Operating Systems)
İşletim Sistemleri (Operating Systems)
doğal sayısındaki rakamların sayı değerleri toplamı kaçtır?
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
Sunum transkripti:

Ölümcül Kilitlenme (Deadlock)

Ölümcül Kilitlenme Aynı kaynakları kullanan Görevler Birinin istediği kaynağı bir diğeri tutuyor ve bırakmıyor Görevlerin hiç biri ilerleyemez ⇒ ölümcül kilitlenme

Ölümcül Kilitlenme Sistem kaynaklarını ortak olarak kullanan veya birbiri ile haberleşen bir grup görevin kalıcı olarak bloke olması durumuna ölümcül kilitlenme denir.

Ölümcül Kilitlenme Bilgisayar Kaynakları Ele Geçirilebilir (Pre-emptable) İşlemci I/O Kanalları Ana bellek İkincil bellek Aygıtlar Dosyalar Veritabanı Semaforlar Ele Geçirilemez (Non Pre-emptable) Kesmeler Sinyaller Mesajlar I/O tampondaki bilgiler CDROM Yazma Ele geçirilebilir kaynak, bir görev bu kaynağa sahip ise elinden alındığında problemler oluşturmayan kaynaktır. Ele geçirilemeyen kaynak, görev bu kaynağa sahiptir ve elinden alınamaz.

200 KB bir sistemde;

Aynı kaynakların farklı sıralarda istenilmesinde ölümcül kilitlenme olma olasılığı yüksektir.

Ölümcül Kilitlenmeye Neden Olan Durumlar Karşılıklı Dışlama(Mutual Exclusion) Her kaynağı aynı anda bir görev ya kullanıyordur ya da atanmıştır. Tut ve Bekleme Koşulu Elindeki kaynağı bırakmadan başka kaynak ister ve bu kaynağı elde edemediğinde beklemeye geçen görevler Geri Alınamaz Koşulu Bir göreve daha önceden verilen kaynaklar zorla elinden alınamaması durumu. Dairesel Bekleme Koşulu İki veya daha fazla görev zincir şeklinde kendinden önceki göreve ait olan kaynağı bekler.

Ölümcül Kilitlenmeyi Önleme Karşılıklı Dışlamayı önleme (dosya örneği) Okuma – Okuma Okuma – Yazma Yazma – Okuma Yazma – Yazma Okuma için birden fazla erişimi yazma için özel erişim Birden fazla görev yazma izni istiyorsa bu durmda bile kilitlenme oluşabilir.

Ölümcül Kilitlenme Tespiti (Deadlock Detection) 1. Her tip kaynaktan sistemde bir adet olduğu durumda ölümcül kilitlenme tespiti 2. Her tipten birden fazla kaynak için ölümcül kilitlenme tespiti

Kaynak Atama Grafikleri

1. A görevi R yi tutar ve S i ister. 2. B görevi T yi ister. Her tip kaynaktan sistemde bir adet olduğu durumda ölümcül kilitlenme tespiti Örneğin; 7 görev ve 6 adet kaynak olsun. A,B,C,D,E,F,G görevler; R,S,T,U,V,W kaynakları göstersin. Mevcut sistemdeki sahip olunan kaynak durumu ve istenilen kaynak durumu şu şekilde olsun: 1. A görevi R yi tutar ve S i ister. 2. B görevi T yi ister. 3. C görevi S i ister. 4. D görevi U yu tutar ve S ile T yi ister. 5. E görevi T yi tutar ve V yi ister. 6. F görevi W yi tutar ve S i ister. 7. G görevi V yi tutar ve U yu ister. SORU:Sistem ölümcül kilitli midir ? Öyleyse hangi süreçler ?

Her tipten birden fazla kaynak için ölümcül kilitlenme tespiti Matris temelli bir algoritma kullanılır. Elimizdeki kaynakların sınıflarını Ei (1<=i<=n) şeklinde isimlendirelim. E var olan kaynak vektörüdür. Her kaynaktan var olan örnek sayısını verir. Örneğin E1 disket sınıfı olsun. E1=2 elimizde 2 adet disket sürücüsü olduğunu göstersin. A vektörü kullanılabilir olan kaynakları göstersin. Ai i. Sınıf kaynaktan kullanılabilir kaç tane örnek olduğunu göstersin. Eğer A1=0 ise, disket sürücüsünden kullanılabilir yok demektir. Tüm disket sürücüleri şu anda kullanılıyordur.

Her tipten birden fazla kaynak için ölümcül kilitlenme tespiti Algoritmada iki adet matris kullanılır. C = mevcut anda görevlere tahsis edilmiş kaynaklar matrisidir. R = görevlerin istedikleri kaynakları ve sayılarını gösteren matristir. C nin her satırı bir göreve karşılık gelir. Bu satırın sütunları, görevin sahip olduğu kaynakları göstermektedir. Cij = j kaynağından i görevinde kaç adet var. Rij = i görevinin j kaynağından kaç adet istediğini gösterir.

Her tipten birden fazla kaynak için ölümcül kilitlenme tespiti

Ölümcül Kilitlenme olasılığı var mıdır?

Ölümcül kilitlenme tespiti Algoritma: 1-İşaretli olmayan görev ara. Bu görevin R matrisindeki tüm istekleri A dan küçük veya eşit olmalıdır. 2- Bu şekilde bir görev var ise C deki bu sürece karşılık gelen satırın değerlerini A ya ekle. Bu süreci işaretle ve 1. adıma git. 3-Böyle bir süreç yoksa algoritma sonlandırılır. Algoritma bittiğinde işaretli olmayan süreçler ölümcül kilitlidir.

Ölümcül Kilitlenme Onarımı 1. Keserek onarma (Recovery through preemption) 2. Geri alarak onarma (Recovery through rollback) 3. Öldürerek onarma (Recovery through killing process)

Ölümcül Kilitlenmeden Kaçınma Deadlock Avoidance Sistem istenilen kaynağın verilmesinin güvenli olup olmadığına karar vermelidir.

Güvenli ve Güvensiz Durum Herhangi bir zaman anında sistemin durumu E,A vektörleri ve C,R matrisleri ile gösterilir. Eğer A durumu ölümcül kilitli değilse sistem güvenlidir. Örneğin tek bir kaynak için durumu inceleyelim. Elimizde bu kaynaktan 10 adet olsun. Aşağıda A,B,C süreçlerinin durumları gösterilmektedir.

Güvenli ve Güvensiz Durum

Yemek yiyen filozoflar problemi