題組內容
五、Tr1 和 Tr2 是二個交易(transaction)。某次執行程序(schedule)如下:假設 X 和 Y 在硬碟裡的初始值是 X=1000,Y=1000。
⑶如果此程序是按 time-stamping protocol 執行,且 Tr1 在 Tr2 之後才進入系統 (亦即,TimeStamp(Tr1) > TimeStamp(Tr2))。說明上面程序的執行結果是如何。 (10 分)
詳解 (共 1 筆)
詳解
假設
Timestamp
T1=8
T2=3
| t1 | RTS(Read-Timestamp)(X)=8;x=1000 |
| t2 | X=1000-1000=0 |
| t3 | RTS(Y)=3 Y=2000 |
| t4 | RTS(X)=8 讀最新的RTS=8;X=1000 |
| t5 | WTS(X)->只有t4有RTS衝突,檢查有沒有大於自己的TS,沒有則可以執行 |
| t6 | Y=1000+1000=2000 |
| t7 | WTS(Y),沒有其他人讀寫,可執行 |
最終結果:X=0,Y=2000