[DB] S2PL

[Progra] Programmierung
[DSAL] Datenstrukturen und Algorithmen
[SWT] Softwaretechnik
[DB] Datenbanken und Informationssysteme

S2PL

Beitragvon mirko » 04.08.08 18:58

so, ich schon wieder ;)

mein nächstes verständnisproblem scheint wohl beim S2PL zu liegen. so wie ich das verstanden habe, darf ein prozess zunächst beliebige sperren erhalten. sobald er eine lesesperre wieder freigibt, darf er keine weiteren sperren mehr erhalten. die schreibsperren muss er bis zu seinem commit behalten.

betrachten wir nun folgenden schedule (verkürzt aus aufgabe 9.4):
w1(x) r2(x) w1(y) c1 c2

1 muss ja ganz zu anfang eine schreibsperre auf x bekommen. im nächsten schritt benötigt aber 2 eine lesesperre hierauf. diese kann 2 aber erst bekommen, wenn 1 seine schreibsperre wieder abgibt. 1 gibt die schreibsperre aber erst beim c1 wieder ab. also müsste der S2PL hier ein problem haben.

laut korrektur "geht es" aber (mit smiley)

kann mir jemand sagen, wo mein denkfehler ist?
mirko
 
Beiträge: 1032
Registriert: 22.10.06 18:33
Studiert seit: WS 12/13

Re: S2PL

Beitragvon philipp » 04.08.08 19:13

mirko hat geschrieben: 1 gibt die schreibsperre aber erst beim c1 wieder ab


Dann muss t2 eben solange warten...

wl1(x) w1(x) wl1(y) w1(y) wu1(y) wu1(x) c1 rl2(x) r2(x) ru2(x) c2
Benutzeravatar
philipp
 
Beiträge: 394
Registriert: 05.11.06 23:36
Studiengang: Informatik (M.Sc.)
Studiert seit: WS 07/08
Anwendungsfach: Medizin

Beitragvon mirko » 04.08.08 19:31

achso, ich dachte die reihenfolge war vorgegeben? :roll:
mirko
 
Beiträge: 1032
Registriert: 22.10.06 18:33
Studiert seit: WS 12/13


Zurück zu Praktische Informatik