Das Video kommt von YouTube: erst beim Abspielen verbindet sich die Seite mit YouTube (Google).
4.6 Verklemmung (engl. Deadlock)
Das Wichtigste aus dem Video
Transkriptautomatisch erstellt · 36 Zeilen
- hallo in diesem video möchte ich die sogenannte verklemmung oder englisch auch dead locker klären eine verklemmung oder ein date lockt
- kann immer dann eintreten wenn ich zum einen mehrere prozesse habe und diese prozesse wiederum auf mehrere ressourcen zugreifen
- dabei kann es nämlich passieren dass diese prozesse sich gegenseitig so blockieren dass mindestens einer von diesen prozessen nie fertig wird bzw
- die rechten zeit bekommt in der regel sind es natürlich mehr als nur dieser eine prozess das ganze möchte ich jetzt wieder mit einem beispiel verdeutlichen
- in dem fall ist dass wieder das beispiel aus dem kindergarten mit den kindern die spielen ich habe jetzt hier die entsprechenden
- betriebsmittel graphen dargestellt in dem fall ohne die symbolik mit kreisen und quadraten sondern wieder als figuren und symbole dass ich habe hier mal ein
- prozess 1 man eines kind prozess zwei habe ich hier dargestellt prozess 1 und 2 die würden gerne im sandkasten spielen dazu benötigen sie sowohl die ressource
- 1 also die schaufel als auch die ressorts 2 und jetzt ist folgendes passiert das kind p1 prozess b1 hat sich bereits die ressource r1 gesichert das
- heißt sie ist ein zuordnungsfehler 1 wird den prozess p1 zugeordnet und ebenso wurde er zwei jetzt schon den prozess p2 zugeordnet und damit aber
- sowohl p1 als auch p2 sozusagen im sandkasten spielen können benötigt p1 jetzt noch die ressource p 2 die hat allerdings schon p2 und die ressource p2
- benötigt nicht nur die ressource r2 dies schon hat den eimer sondern auch noch die schaufel r1 was hier entstanden ist ein deadlock denn sowohl p1 kann nicht
- im sandkasten spielen weil es dafür schaufel und einmal benötigt und p2 kann auch nicht spielen weil es tatsächlich ja auch einmal und schaufel benötigt
- aber momentan nur den heimat ganz anders hingegen kind nummer 3 also prozess drei kind nummer drei gesagt gut dann nehme ich mir halt den
- ball ressourcen nummer drei und damit kann das kind spielen ist also nicht in eine verklemmung warum ist dass jetzt ausgerechnet bei den oberen beiden
- kindern zu dieser verklemmung gekommen dafür gibt es genau vier bedingungen die eintreten müssen die dann aber auch jeweils in dem fall finde ich manchmal
- schon erzieherisch wirken können damit überhaupt ein date look eintreten kann ist wichtig dass die sogenannte der sogenannte wechselseitige ausschluss
- eintritt das heißt eine ressource ist entweder frei oder ist verfügbar ein eimer ist entweder frei oder er ist einem prozess zugeordneten ebenfalls
- dazu geordnet oder die schaufel ist entweder verfügbar oder ist halt ein prozess zugeordnet wenn dem nicht so ist dann kann auch kein deadlock entstehen
- wenn ich beispielsweise mehrere eimer habe dann sind das auch mehr ressourcen und dann werde ich auch tatsächlich kein deadlock bekommen als zweiter
- anforderung ist natürlich das problem oder bedingung für ein deadlock ist natürlich dass ein prozess nicht nur eine ressource braucht wie hier die
- schaufel sondern auch wird zweiter oder mindestens eine zweite ressource in dem fall den eimer das kind unten das kind 3 das hat kein problem das ist in keinem
- deadlock bei ist benötigt tatsächlich nur eine einzige ressource die hat es bekommen und damit läuft alles wunderbar das heißt wenn ich dafür sorge
- beispielsweise eines kindergartens dass auch ein spielzeug immer ausreicht zum spiel dann wird auch nie ein date block auftreten
- die dritte bedingung ist die unterbrechung dieses date glock wird im oberen fall nicht eintreten wenn es zum beispiel einfach p2 hingehen wird und
- sagen würde ok ich 40 da einfach auf meiner ressource r2 gebe also den 13 und damit kann p1 sozusagen denn einmal auch
- bekommen dann kann er ein spiel das wäre im grunde die einfachste lösung und da ist es einfach wichtig dass ein prozess der bereits eine ressource hat die nur
- von sich aus frei geben kann also das kann jetzt keiner kommune wie einfach wegnehmen das ist das was man leider dann manchen
- beobachtet dass quasi prozess 1 kommt und dem anderen dann quasi einfach den einmal in dem vorwegnimmt und dann so nach damit die jetzt habe ich bei
- touristen jetzt spiele ich das ist nicht nett deswegen macht man das nicht und deswegen ist das eine dritte bedingung für einen deadlock demzufolge ist es
- halt auch möglich bei betriebssystem beispielsweise da kann das betriebssystem auch nicht einfach eine ressource von dem prozess wieder
- wegnehmen so und das reicht noch nicht damit ich dann auch wirklich anschlüssen deadlock habt gibt es noch die vierte bedingung das ist nämlich die zyklische
- werte bedingungen und das kann man hier ganz gut erkennen das mache ich noch mal deutlich wenn ich nämlich genau in so einem betriebsmittel graf mir jetzt die
- zahlen anschaut dann sehe ich kann hier einmal im kreis umher gehen und kommen wieder am anfang an das ist genau der zyklus und wenn ich einen solchen zyklus
- habe in meinem betriebsmittel grafen dann habe ich tatsächlich auch das problem dass ich jetzt ein deadlock habe in unserem fall gibt es keinen zyklus
- deswegen ist das kind drei auch glücklich und kein deadlock und kann spielen soweit zum thema medlocks bis zum
- nächsten video