Re: Deadlock im Recht



Jochen Walerka schrieb:
Arnd Schröter wrote:


Das ist in der Informatik eine Deadlocksituation-eine gegenseitige
Verblockung.


Schön, mal wieder davon zu hören, kenn ich noch aus den Vorlesungen.
Völlig OT:
Kennst du das 5-Philosophen-Problem?



Was ist der Unterschied zwischen Deadlock und Starvation?

Deadlock: Gegenseitiges Blockieren (Zyklus im Wartet-auf-Graphen).

(Zitate aus
http://i30www.ibds.uka.de/teaching/courses/lecture.php?courseid=109&lid=en&termid=13&showmode=allpastterms
)

Conditions for Resource Deadlock

1. Exclusiveness No Sharing at all
! a resource is either assigned to 1 process or is available
2. Hold and Wait Allocating/releasing occur at
! process holding resources can request additional resources
3. No Preemption …from exclusive resources
! previously granted resources cannot forcibly taken away
4. Circular Wait Circular dependency
! must be a circular chain of at least 2 or more processes
! each waiting for resource held by next member of chain
Note: These are not sufficient conditions
Conditions for Resource Deadlock


Starvation: Ein Philosoph verhungert, weil ihm ständig andere
Philosophen vorgezogen werden.

Laut unserer Systemarchitektur-VL sind die Kriterien für eine gültige
Lösung für gegenseitigen Ausschluß:

Four Critical Section Requirements
* Exclusiveness
! At most 1 KLT is in its CS
* Portability
! No assumptions about speed or numbers of CPUs
or scheduling policy
* Progress
! No KLT running outside its CS prevents another
KLT from entering its CS
* Bounded Waiting (no starvation)
! If KLT is waiting on the CS, then this KLT will
eventually enter its CS
! Assumes threads eventually leave their CS


.



Relevant Pages

  • Re: How to programmatically avoid deadlock?
    ... before the wait for the 'other' resource is resolved. ... splitting computation in a vat into "turns" which occur in response to ... versatile parallel programming technique helps me to ... understand that deadlock situation is fully natural, ...
    (comp.programming.threads)
  • Re: Am I using ThreadPool the right way?
    ... It is possible to debug deadlocks and other threading issues in the Express version, but it's not something I'd recommend for someone unfamiliar with the general techniques of dealing with thread issues in the first place, since Express doesn't provide any direct way to get at the individual threads in the debugger. ... You'll be looking for threads that are stopped on a statement that waits for some resource, to identify which threads are involved in the deadlock and why they are waiting. ...
    (microsoft.public.dotnet.languages.csharp)
  • Re: Prevents Events From Interrupting Events
    ... But since that's pretty obvious and since you're still asking the question, I'm assuming you don't have complete control over the events. ... it cannot move and I get a deadlock. ... then you also need to design your architecture so that you don't have one thread trying to get a resource another already has while that other thread is trying to get the resource the first thread already has. ... The delegate type does in fact make this potentially easier, since you can either create your own queue of delegates with an object array for the parameters and process it yourself, or take advantage of the Control.BeginInvokemethod to queue execution of delegates on a very specific thread. ...
    (microsoft.public.dotnet.languages.csharp)
  • Re: sizeof
    ... Anytime you have concurrent processes contending for resources you ... If the concurrent processes are unrestricted in resource use ... then there can be deadlock. ...
    (comp.lang.c)