2011-10-15 2 views
0

안녕하세요, 저는 배포 된 시스템에서 논리적 클럭에 대해 물어보고 싶습니다. Lamport 알고리즘은 프로세스 Pi의 이벤트가 메시지를 보내고 프로세스 Pj 이벤트 b가 해당 메시지를받은 경우 이벤트 b가 발생하기 전에 정의 될 수 있음을 정의합니다. 프로세스 Pj가 이벤트 b에서 메시지를 수신하기 전에 이벤트 c가 Pj에서 발생 했으므로 (따라서 c가 b보다 먼저 발생 함) 프로세스 Pi를 전송 한 다음 프로세스 Pi가 이벤트 a 이후의 이벤트 d에서 메시지를 수신 한 다음 이벤트 c ,뿐만 아니라, 전에 일어난 d.분산 논리 클럭에 대해서, Lamport 알고리즘

제 질문은 이벤트 a (프로세스 Pi에서 발생한 첫 번째 이벤트)와 이벤트 c (프로세스 Pj에서 첫 번째 이벤트가 발생 했음) 사이의 관계를 정의하는 방법입니다. 프로세스 Pi와 Pj 모두 이벤트 a와 c의 순서에 동의하게하는 방법?

램 포트 알고리즘 : http://en.wikipedia.org/wiki/Lamport_timestamps

답변

3

대답은 간단하다. Lamport 알고리즘에 따라 이벤트 a와 c 사이의 관계를 정의 할 수 없습니다. 우리가 알고있는 모든 일들은 다음과 같습니다

A -> B와 C -> D와 -> D 및 C -> B

하지만 결론을 내릴 수없는 중 하나 -> C 또는 C ->의 모든.