看板 Grad-ProbAsk 關於我們 聯絡資訊
雖然題目沒講 但是依照96 97 都有出 所以就假設是考TimeStamp-Based protocol 吧XDD ( 恐龍本 Synchronization 倒數幾節) 以下是我的答案QQ AC 原則是 每個operation需成功 滿足 若是Transaction 1 寫入變數A 則 TS(1) >= W-Timestamp(A) 且 TS(1) >= R-timestamp(A) 否則 rejeect 若是Transaction 1 讀取變數A 則 TS(1) >= W-Timestamp(A) 否則是reject 若所有opeations皆成功 就是可序列化 假設左到右有時間軸 ( 一單位時間, 假設1開始 ) 假設每個交易的Timestamp是在第一個operation之時間 即 TS(1) = 1 , TS(2) = 2 變數的timestamp皆假設0開始 (A) Time 1 2 3 4 W-timestamp(A) 0 0 1 1 R-timestamp(A) 1 1 1 1 W-timestamp(B) 0 0 0 2 R-timestamp(B) 0 2 2 2 所以serializable (B) Time 1 2 3 4 W-timestamp(A) 0 2 R-timestamp(A) 1 1 W-timestamp(B) 0 0 R-timestamp(B) 0 0 time 3 因為TS(1) = 1 < 2 = W-timestamp(A) 所以reject 所以非serializable (C) Time 1 2 3 4 W-timestamp(A) 0 0 0 2 R-timestamp(A) 1 1 1 1 W-timestamp(B) 0 2 0 0 R-timestamp(B) 0 0 2 2 所以serializable (D) Time 1 2 3 4 W-timestamp(A) 0 0 R-timestamp(A) 1 1 W-timestamp(B) 0 0 R-timestamp(B) 0 2 因為 time 3 時 TS(1) = 1 < 2 = R-Timestamp(B) 所以拒絕 所以非Serializable (E) Time 1 2 3 4 W-timestamp(A) 1 1 1 R-timestamp(A) 0 2 2 W-timestamp(B) 0 0 2 R-timestamp(B) 0 0 0 因為 time 4 時 TS(1) = 1 < 2 = W-Timestamp(B) 所以拒絕 所以非Serializable 我只有對過市面上的解答 可是答案不一樣= = 所以放上來討論一下.. 詳細的protocol要查一下書 我不會太會打詳細的教學...非常抱歉QQ 希望有做這題的大大們幫忙討論一下 感謝~~~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 221.120.65.52