You are on page 1of 3

BÀI TẬP TRÊN LỚP

MÔN HỌC: HỆ PHÂN TÁN

CHƯƠNG 4: ĐỒNG BỘ HÓA

HỌ TÊN SV: Lê Đình Hiếu MSSV :20194280

Mã lớp:132666 MÃ HỌC PHẦN:IT4611

Câu 1:Ví dụ về vấn đề gặp phải khi các máy tính/tiến trình hoạt động trong hệ
thống phân tán mà không có đồng bộ vật lý dùng chung:

Nếu chương trình soạn thảo editor và chương trình dịch nằm ở 2 máy khác
nhau:

-File compile output.o sẽ luôn xảy ra sau file output.c. Nếu 2 máy tính
không có đồng hồ dùng chung thì khi người dùng thay đổi nội dung của
file output.c và nội dung mới xảy ra ở 2143 nhưng file output.o cũ xảy ra
ở 2144 và sau thời điểm file output.c mới được sửa, khi đó máy tính sẽ
hiểu là file output.c mới đã được compile rồi và sẽ không compile lại
nữa.

Câu 2:Lamport đề xuất sử dụng đồng hồ logic thay cho đồng hồ vật lý vì ông đã
chỉ ra rằng không nhất thiết phải đồng bộ thời gian giữa các đồng hồ cho
chúng giống nhau mà cái chúng ta cần quan tâm chính là thứ tự xảy ra các sự
kiện, cái nào xảy ra trước, cái nào sau.

Câu 3:Đặc điểm của mạng không dây khiến cho thiết kế các giải thuật đồng bộ
khác các kiểu mảng khác:
Trong các mạng không dây, ví dụ mạng cảm biến không dây, các thiết bị cảm
biến phải đặt trong một môi trường giám sát và không được cung cấp một
nguồn điện ổn điện mà phải chạy bằng pin. Vì thế, các giải thuật đồng bộ cho
mạng không dây phải được thiết kế sao cho tiết kiệm được năng lượng nhất có
thể.

Câu 4:

a. Để thực hiện thành công một tiến trình vào sử dụng SR, cần n-1 request
và n-1 reply => cần tổng cộng 2*(n-1) thông điệp.
b. Nếu timestamp của request từ Pi nhỏ hơn timestamp của request từ Pj
thì Pi sẽ được sử dụng tài nguyên trước Pj và để được sử dụng thì Pi
phải nhận được response OK đến từ Pj mà trong đề xuất đưa ra thì Pj sẽ
không gửi reply cho Pi, điều này sẽ làm cho Pi không thể biết rằng bao
lâu mình mới nhận được rep của và mình có được sử dụng tài nguyên
không (nguyên tắc phải được reply OK từ tất cả tiến trình còn lại thì Pi
mới được phép sử dụng tài nguyên) => nếu không quy định thời gian
nhận reply thì phương án cải tiến này không khả thi.
Nếu có thêm quy định về ờ ậ thì số thông điệp cần để
thực hiện thành công một tiến trình vào sử dụng SR là n-1.

Câu 5:
-Chờ tiến trình khác vào phòng chờ: 2

-Cổng vào được đóng: 4

-Tiến trình i đang chờ ở ngoài phòng chờ:1

-Rời phòng, mở lại cổng vào nếu không còn ai trong phòng chờ:0

-Đứng đợi trong phòng chờ:3

Trước khi vào phòng chờ, Pi phải đứng đợi (flag[i] 1)

-Sau khi vào phòng đợi thì tiến trình sẽ ngồi chờ trong phòng đợi để được đến
lượt (flag[i] 3)

--Nếu tồn tại tiến trình còn đang đứng ngoài phòng chờ thì sẽ gán flag[i] là 2
để chờ tiến trình khác vào

-Sau khi tất cả tiến trình vào phòng chờ hết thì gán flag[i] là 4 để cổng đóng:

-Khi giải phóng tài nguyên, các tiến trình rời phòng hết, khi đó flag[i] có giá trị
là 0:

You might also like