Pr-1st-1.1-m04-Slajd15: Różnice pomiędzy wersjami
Nie podano opisu zmian |
m Zastępowanie tekstu – „ </math>” na „</math>” |
||
(Nie pokazano 1 pośredniej wersji utworzonej przez tego samego użytkownika) | |||
Linia 3: | Linia 3: | ||
[[Image:pr-1st-1.1-m04-Slajd15.png|Realizacja zegarów wektorowych]] | [[Image:pr-1st-1.1-m04-Slajd15.png|Realizacja zegarów wektorowych]] | ||
Mattern i niezależnie Fidge (a także inni badacze) zaproponowali realizację zegarów wektorowych, w której funkcja <math>\mathcal{T}^V</math>, implementowana była przez zmienne tablicowe <math>vClock_i</math>, <math> 1 \le i \le n</math>, skojarzone z poszczególnymi procesami. Zmienna <math>vClock_i</math> jest tablicą [1.. ''n''] liczb naturalnych, odpowiadającą pewnej aproksymacji czasu globalnego z perspektywy procesu <math>P_i</math>. Zmienna <math>vClock_i[i]</math> reprezentuje przy tym w każdej chwili skalarny czas lokalny procesu <math>P_i</math>, a zmienna <math>vClock_i[j]</math>, <math> j \ne i </math> aktualne wyobrażenie procesu <math>P_i</math> o bieżącym skalarnym czasie lokalnym procesu <math>P_j</math>. W efekcie aktualna wartość tablicy <math>vClock_i</math> odpowiada w każdej chwili wartości funkcji <math>\mathcal{T}^V(E_i^k)</math>, odnoszącej się do ostatniego zdarzenia, jakie zaszło w procesie <math>P_j</math>. | Mattern i niezależnie Fidge (a także inni badacze) zaproponowali realizację zegarów wektorowych, w której funkcja <math>\mathcal{T}^V</math>, implementowana była przez zmienne tablicowe <math>vClock_i</math>, <math>1 \le i \le n</math>, skojarzone z poszczególnymi procesami. Zmienna <math>vClock_i</math> jest tablicą [1.. ''n''] liczb naturalnych, odpowiadającą pewnej aproksymacji czasu globalnego z perspektywy procesu <math>P_i</math>. Zmienna <math>vClock_i[i]</math> reprezentuje przy tym w każdej chwili skalarny czas lokalny procesu <math>P_i</math>, a zmienna <math>vClock_i[j]</math>, <math>j \ne i</math> aktualne wyobrażenie procesu <math>P_i</math> o bieżącym skalarnym czasie lokalnym procesu <math>P_j</math>. W efekcie aktualna wartość tablicy <math>vClock_i</math> odpowiada w każdej chwili wartości funkcji <math>\mathcal{T}^V(E_i^k)</math>, odnoszącej się do ostatniego zdarzenia, jakie zaszło w procesie <math>P_j</math>. | ||
Szczegółową implementację mechanizmu zegara wektorowego przedstawia algorytm zaprezentowany na kolejnych slajdach. | Szczegółową implementację mechanizmu zegara wektorowego przedstawia algorytm zaprezentowany na kolejnych slajdach. | ||
[[pr-1st-1.1-m04-Slajd14 | << Poprzedni slajd]] | [[pr-1st-1.1-m04-toc|Spis treści ]] | [[pr-1st-1.1-m04-Slajd16 | Następny slajd >>]] | [[pr-1st-1.1-m04-Slajd14 | << Poprzedni slajd]] | [[pr-1st-1.1-m04-toc|Spis treści ]] | [[pr-1st-1.1-m04-Slajd16 | Następny slajd >>]] |
Aktualna wersja na dzień 10:46, 5 wrz 2023
Realizacja zegarów wektorowych
Mattern i niezależnie Fidge (a także inni badacze) zaproponowali realizację zegarów wektorowych, w której funkcja , implementowana była przez zmienne tablicowe , , skojarzone z poszczególnymi procesami. Zmienna jest tablicą [1.. n] liczb naturalnych, odpowiadającą pewnej aproksymacji czasu globalnego z perspektywy procesu . Zmienna reprezentuje przy tym w każdej chwili skalarny czas lokalny procesu , a zmienna , aktualne wyobrażenie procesu o bieżącym skalarnym czasie lokalnym procesu . W efekcie aktualna wartość tablicy odpowiada w każdej chwili wartości funkcji , odnoszącej się do ostatniego zdarzenia, jakie zaszło w procesie . Szczegółową implementację mechanizmu zegara wektorowego przedstawia algorytm zaprezentowany na kolejnych slajdach.