Results 1 to 4 of 4
  1. #1

    Title
    Baccalaureus
    Join Date
    Oct 2007
    Location
    Niederösterreich
    Posts
    732
    Thanks Thanks Given 
    37
    Thanks Thanks Received 
    48
    Thanked in
    36 Posts

    Prüfung 25.04.08

    Aufgabe 3:

    Multi-Granularity Locking - irgendwie hab ich noch immer nicht ganz kapiert, wie ich sehe, ob ein deadlock vorliegt oder nicht

    die "einfache" blockierung sieht man ja ganz leicht anhand unserer netten verträglichkeitstabelle

    bitte um eine erklärung für den deadlock - danke!

  2. #2

    Title
    Elite
    Join Date
    Oct 2007
    Posts
    413
    Thanks Thanks Given 
    28
    Thanks Thanks Received 
    8
    Thanked in
    6 Posts
    Quote Originally Posted by babs80 View Post
    Aufgabe 3:

    Multi-Granularity Locking - irgendwie hab ich noch immer nicht ganz kapiert, wie ich sehe, ob ein deadlock vorliegt oder nicht
    Wenn bei beiden Transaktionen sprich T1 und T2 eine Blockierung stattfindet, dann hat man ein Deadlock.
    Resilution

  3. #3
    Paulchen's Avatar
    Title
    Super Moderator
    Join Date
    Oct 2004
    Location
    /home/paulchen
    Posts
    8,086
    Thanks Thanks Given 
    1,967
    Thanks Thanks Received 
    1,455
    Thanked in
    994 Posts
    Quote Originally Posted by Maho View Post
    Wenn bei beiden Transaktionen sprich T1 und T2 eine Blockierung stattfindet, dann hat man ein Deadlock.
    Nein, nicht so ganz. T1 und T2 können ja blockiert werden, weil sie darauf warten, dass T3 eine Ressource freigibt. Wenn T3 das tut, dann läuft T1 weiter, wenn T1 seine Ressourcen freigibt, kommt T2 zum Zug.

    Das Wesentliche an einem Deadlock ist, dass es zwischen den beteiligten Prozessen, Transaktionen, ... zyklische Beziehungen in Bezug auf das Warten auf die Freigabe von Ressourcen gibt. Z.B. kann T1 eine Ressource A anfordern, T2 eine Ressource B. Dann fordert T1 B an und, bevor T1 A freigibt, fordert T2 A an. Nun wartet T1 darauf, dass T2 B freigibt, gibt aber A nicht frei. T2 wartet darauf, dass T1 A freigibt, gibt aber seinerseits B nicht frei. Somit geht weder bei T1 noch bei T2 irgendwas weiter, ein Deadlock liegt vor.

    An einem Deadlock können beliebig viele Prozesse, Transaktionen, ... beteiligt sein. Wesentlich ist das zyklische Warten, das ohne Eingriff von außen nicht aufgelöst werden kann.

  4. The Following User Says Thank You to Paulchen For This Useful Post:


  5. #4

    Title
    Principal
    Join Date
    Oct 2003
    Posts
    95
    Thanks Thanks Given 
    1
    Thanks Thanks Received 
    3
    Thanked in
    1 Post
    Eine sehr gute Erklärung Danke !

    mfG
    Ice
    Krieg ist eine Art Gottes, den Amerikanern die Geographie beizubringen !!!

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •