update
This commit is contained in:
parent
f6531d7b5d
commit
f85da5b806
BIN
Writerside/images/image_84.png
Normal file
BIN
Writerside/images/image_84.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 21 KiB |
BIN
Writerside/images/image_85.png
Normal file
BIN
Writerside/images/image_85.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 12 KiB |
BIN
Writerside/images/image_86.png
Normal file
BIN
Writerside/images/image_86.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 9.0 KiB |
@ -110,3 +110,40 @@ Befehle mit [POSIX API](06_prozessstruktur.md#posix-api)
|
||||
|
||||
|
||||
## Deadlock
|
||||
(Stillstand / Blockade) ist eine Situation, bei der zwei oder mehr Prozesse auf unbestimmte Weise blockiert sind, weil sie auf die Freigabe von Ressourcen warten
|
||||
|
||||
### Entstehungsbedingungen von Deadlocks
|
||||
- **Gegenseitiger Ausschluss**
|
||||
- Mindestens eine Ressource muss exklusiv für immer nur einen Prozess sein
|
||||
- **Warte-Zustand**
|
||||
- Prozess hält eine Ressource und wartet bis er die nächste kriegt
|
||||
- **Nicht-Preemption**
|
||||
- Ressourcen können nicht zwangsweise (_sondern nur freiwillig_) von Prozess/Thread entzogen werden
|
||||
- **Zyklus in den Wartebeziehungen**
|
||||
- Kette von Prozessen/Threads
|
||||
- P1 wartet auf Ressource von P2, P2 auf P3, ..., PN auf P1
|
||||
|
||||
### Erkennung von Deadlocks
|
||||
_Betriebsmittelgraf_ (Ressource Allocation Graph)
|
||||
- Modelliert _Zuteilung und Freigabe_ von Ressourcen zwischen Prozessen
|
||||
|
||||

|
||||
|
||||
- Falls es mehrere Instanzen einer Ressource gibt
|
||||
- **matrizen-basiertes Verfahren**
|
||||
- Ressourcenvektor
|
||||
- Belegungsmatrix
|
||||
- Anforderungsmatrix
|
||||
- Ressourcenrestvektor
|
||||
|
||||
#### Beispiel Erkennung von Deadlocks
|
||||

|
||||

|
||||
|
||||
### Livelock
|
||||
- Form der Blockierung von 2 oder mehr Prozessen, welche aber ständig zwischen mehreren Zuständen wechseln und ihnen nicht entkommen können
|
||||
- Bspw.:
|
||||
- 2 Personen kommen sich auf dem Gang entgegen und weichen die ganze Zeit in die gleiche Richtung aus
|
||||
- Deadlock:
|
||||
- Personen stehen gegenüber und warten bis der andere beiseite geht, was nicht passiert
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user