Yardım kilitlenmeye neden olabilecek işlemlerin yürütülmesi

Bu konuyu okuyanlar

Soham1087

Öğrenci
Cezalı
Katılım
17 Haziran 2022
Mesajlar
6
Reaksiyon puanı
0
Puanları
1
Yaş
26
Birisi bunları çözmeme ve anlamama yardımcı olabilir mi? Aşağıdaki iki işlemi göz önünde bulundurun.
T1: oku(A); oku(B); A = 0 ise, B:= B + 1; (B) yazın. T2: oku(B); oku); B = 0 ise, A = A + 1; yaz (A)
T1:
read(A);
read(B);
if A = 0 then B := B + 1;
write(B).
T2:
read(B);
read(A);
if B = 0 then A := A + 1;
write(A).
A- İki fazlı kilitleme protokolünün takip edildiğinden emin olmak için T1 ve T2 işlemlerine kilitleme ve kilit açma talimatlarını dahil edin.
Lock-S ve lock-X gösterimini aşağıdaki gibi kullanın: -Shared Lock.
Bir T işlemi, Q öğesinde bir paylaşılan mod kilidi (kilit-S ile gösterilir) elde ederse, T okuyabilir ancak Q'yu yazamaz. -Exclusive Lock.
Bir T işlemi, bir Q nesnesi üzerinde özel mod kilidi (kilit-X ile gösterilir) elde ederse, T, Q'yu okuyabilir ve yazabilir.
B- Bu işlemlerin gerçekleşmesi kilitlenme ile sonuçlanabilir mi? Mümkünse, bir örnek sağlayın, çünkü çevrimiçi olarak yalnızca scaler topics tarafından bu öğretici gibi genel durumu açıklayan ileti dizileri bulamadım.
 
Üst