LP
TRÌNH
ĐỒNG
THI
&
PHÂN
TÁN
BÀI 8:
BÀI TOÁN BẦU CỬ
Giảng viên: Lê Nguyễn Tuấn Thành
Email: thanhlnt@tlu.edu.vn
1
NI DUNG
Bài toán bu c
Thut toán da trên vòng tròn
Thut toán Chang-Roberts
Thut toán Hirschberg-Sinclair
2
Bài ging có s dng hình v trong cun sách “Concurrent and Distributed Computing in Java, Vijay K. Garg,
University of Texas, John Wiley & Sons, 2005
Bài toán bu c
Mt bài toán quan trng trong h thng phân
tán là Bài toán bu c tiến trình lãnh đo
Tiến trình lãnh đo th được s dng như
người điu phi trong nhng thut toán tp
trung cho bài toán mutex
3
Giao din Election
Phương thc getLeader() tr v đnh danh ca tiến
trình được chn là lãnh đo
Nếu đnh danh ca tiến trình lãnh đo chưa được
biết, thì phương thc này s khóa cho đến khi
người lãnh đo được chn.
4
Bài toán bu c:
Gii pháp (1)
Bài toán bu c người lãnh đo tương t như
bài toán loi tr ln nhau
Trong c 2 bài toán, chúng ta đu quan tâm đến
vic chn ra mt trong s các tiến trình, được gi
là tiến trình đc quyn
Các gii pháp da trên người điu phi cho
bài toán mutex không th áp dng cho bài
toán bu c người lãnh đo
do: vic quyết đnh tiến trình nào đóng vai trò
người điu phi hoc gi token là tương đương vi
bài toán bu c người lãnh đo
5