Vektori kello
Vektorikello on algoritmi tapahtumien osittaisen järjestyksen saamiseksi hajautetussa järjestelmässä ja syy-seuraus- suhteiden rikkomusten havaitsemiseen ( looginen kello ).
Samalla tavalla kuin Lamportin aikaleimoissa , järjestelmään lähetetyt sisäiset viestit sisältävät prosessin loogisen kellon tilan. Prosessijärjestelmän vektorikello on loogisten kellojen joukko tai vektori, yksi kello prosessia kohden. Vektorin paikallinen esiintymä, jolla on pienimmät mahdolliset kelloarvot kullekin prosessille, rakennetaan seuraavasti:


- aluksi kaikki kelloarvot ovat 0;
- sisäisen tapahtuman sattuessa nykyisen prosessin laskuria kasvatetaan yhdellä;
- ennen viestin lähettämistä nykyistä prosessia vastaavaa sisäistä laskuria kasvatetaan yhdellä ja vektori liitetään kokonaan viestiin;
- kun viesti vastaanotetaan, nykyisen prosessin laskuria nostetaan yhdellä, sitten nykyisen vektorin arvot asetetaan nykyisen ja vastaanotetun maksimiarvoon.
Fidge ja Mattern kehittivät vektorikellot itsenäisesti vuonna 1988 [1] .
Looginen vektorikello on funktio järjestetystä tapahtumien joukosta kokonaislukujen vektoriksi.
Muistiinpanot
- ↑ Colin J. Fidge (helmikuu 1988). "Aikaleimat viestien välitysjärjestelmissä, jotka säilyttävät osittaisen järjestyksen" (PDF) . Teoksessa K. Raymond (Toim.). Proc. Australian 11. tietojenkäsittelytieteen konferenssissa (ACSC'88) . s. 56-66. Arkistoitu alkuperäisestä (PDF) 2009-09-15 . Haettu 13.2.2009 .
Arkistoitu 15. syyskuuta 2009 Wayback Machinessa
Kirjallisuus