Das Video kommt von YouTube: erst beim Abspielen verbindet sich die Seite mit YouTube (Google).
Betriebssysteme #4 - Deadlocks | Verklemmungen | Bankieralgorithmus deutsch
Das Wichtigste aus dem Video
Transkriptautomatisch erstellt · 40 Zeilen
- [Musik] logan heute zum thema medlocks und verklemmungen bei prozessen und in
- diesem zuge schauen wir auch den banker oder bank hier rhythmus an zunächst mal was sind sogenannte dead loks wir haben prozesse und diese prozesse brauchen
- bestimmte ressourcen um durchgeführt werden zu können nun kann es der fall sein dass ein prozess gerade eine ressource hält während er parallel dazu
- eine andere an fordert deshalb macht ein zweiter prozess nur umgekehrt also nehme mal an meinem prozess p1 und einem prozess p2 der ressourcen ressource b
- wir haben es nun folgenden fall prozess p1 hält ressource b während p2 ressource b anfordert und wartet gleichzeitig auf ressource a während die aber von prozess
- p2 gehalten werde das heißt es kann nicht funktionieren solange zum beispiel nicht eine von den ressourcen frei gegeben wird oder alle ressourcen frei
- gegeben werden es gibt bestimmte bedingungen die zu treffen müssen damit es eben zu solchen jobs kommt das ist zum einen die exklusive belegung also
- zum beispiel prozess per 1 belegt exklusiv ressource b dazu kommt eine zusätzliche bewegung bedeutet dass wir mehr ressourcen gleichzeitig belegen
- können in dem fall würden wir in dem fall würden wir ressourcen a und b haben wollen wir beide prozesse das dritte wäre dass wir keine erzwungene rückgabe
- haben zum beispiel dass die ressource nach einer gewissen zeit die verstrichen ist zurückgegeben werden muss und was auch noch zutreffen muss damit ein
- verklärungen steht ist ein sogenanntes erklärt also ein gegenseitiges warten auf eine ressource prozess vereins sie zum beispiel auch jahres usa wird gerade
- von prozess zwei belegt dann warte ich mal kurz bis 12 die ressource freigibt aber kurz s1 sieht in diesem fall nicht dass prozess p2 die ressource erst
- freigeben kann so für eine ressource b bekommen hat daher als es mal zur verklemmung kommt gibt es verschiedene strategien zur behandlung von blogs
- haben wir einmal das ignorieren das ist so ziemlich die einfachste methode die man wählen kann die wird tatsächlich auch teilweise genutzt weil der blogs in
- der regel selten vorkommen eine weitere möglichkeit wäre das automatische erkennen und dann gegebenenfalls zum beispiel freigeben von den ressourcen
- das könnte man machen mit betriebsmittel grafen in denen wären dann nämlich zyklen drin das dritte wäre verhindern von verklemmungen durch zb das vermeiden
- von exklusiven belegungen könnte man schon der blogs verhindern und das letzte womit man es noch genauer beschäftigen wäre die vermeidung von
- verklemmungen durch einen bestimmten algorithmus und wieder funktioniert schauen wir uns jetzt an bei diesem algorithmus geht es darum eine ausführe
- eine folge zu finden bei der die prozesse durchlaufen können und genug ressourcen haben um sich nicht gegenseitig zu behindern müssen immer
- zwei schritte erstens müssen einem prozess finden der mit den verfügbaren ressourcen kann wenn es nicht gibt dann beenden wir das sollte im normalfall
- natürlich dann auch das ende und alternativ wäre die rückgabe den ressourcen und weitermachen mit schritt 1 das heißt wir haben einen prozess der
- fordert ressourcen an die werden ihm zugeteilt anschließend wenn der prozess beendet ist wird er wieder die ressourcen zurückgeben und wir finden
- einen neuen prozess der mit den verfügbaren ressourcen laufen kann das ganze machen eben so lange bis alle prozesse abgearbeitet sind haben wir uns
- dazu mal ein beispiel zunächst brauchen wir eine location matrix und das sind die gerade den prozessen zugewiesenen ressourcen also wir haben hier jetzt zum
- beispiel fünf prozesse drei ressourcen und in der location matrix sehen wir die ressourcen die zum jeweiligen prozess gerade zu gewesen sind oder die den
- prozess gerade hält dann haben wir noch einen tricks die ändert sich im laufe des ganzen algorithmus nicht die gibt uns an wie viel wissen benötigt werden
- und zuletzt haben wir noch eine valable tabelle das sind die ressourcen die gerade zur verfügung stehen in dem fall hätten wir drei von regisseur drei von
- ressourcen b und zweifel ressource sie so wenn wir jetzt einfach mal beginnen dann sehen wir prozess 1 würde fünf ressourcen verbrauchen das haben wir
- nicht wir haben gerade nur drei das heißt überspringen 41 und schauen können wir prozess zwei mit dem benötigten ressourcen
- bestücken da sehen wir wir brauchen drei 22 das haben wir ergänzen jeweils eine ressource von a und 2 für beyoncé und haben dann nach diesen prozess noch zwei
- von a1 von bären keine mehr von zehn dann überprüfen wir weiter ob wir vielleicht noch im gleichen zuge einen anderen prozess ausführen können und
- genug ressourcen haben da sehen wir schon höchstens würde prozess vier noch in frage kommen allerdings haben wir zu wenig von ressource ziel deswegen können
- wir hier nur prozess zwei beenden und dann gehen wir den nächsten zyklus über nach beenden des zweiten durchlauf haben wir natürlich wieder die ressourcen die
- uns prozess 2 zurück gibt das wären dann insgesamt fünf von a3 von bmc damit können wir jetzt prozess 1 laufen lassen und wir schauen ob wir noch einen
- prozess damit verfolgt hängen können diesmal funktioniert ist wir können prozess vier noch ressourcen geben sodass auch diese im selben schritt
- laufen kann anschließend werden diese ressourcen vor dem prozess wieder zurückgegeben nachdem die abgeschlossen wurden und wir haben jetzt sieben von a6
- von b und drei von zehn das machen wir jetzt noch mal in einem schritt ihr prozess 3 kann nur durch laufen die ressourcen reichen nicht mehr für den
- prozess sind deshalb brauchen wir noch einen weiteren durchgang bis dann letztendlich alle prozesse durchlaufen sind und damit wäre dann der algorithmus
- beendet und wir sehen so kann es überhaupt nicht erst zu verklemmungen kommen und jeder prozess kommt sicher andere das war es mit diesem video ich
- hoffe ich habe euch geholfen [Musik]