1
Khoa KTMT V c Lungũ Đứ
Chương V-I: Liên lạc giữa các Tiến Trình
CƠ
CƠ
CHẾ
CHẾ
?
?
VẤN
VẤN
ĐỀ
ĐỀ
?
?
TRAO
TRAO
ĐỔI
ĐỔI
THÔNG
THÔNG
TIN
TIN
GIỮA
GIỮA
CÁC
CÁC
TIẾN
TIẾN
TRÌNH
TRÌNH
GIẢI
GIẢI
PHÁP
PHÁP
?
?
2
Khoa KTMT V c Lungũ Đứ
Nhu Cầu Liên Lạc
Q
L
p
Chia sẻ thông tin
R
Phối hợp tăng tốc độ xử lý
Q
L
p
JOB
3
Khoa KTMT V c Lungũ Đứ
Các Cơ Chế Liên Lạc
Signal : Không truy n c d li uề đượ ữ ệ
Các tín hi u c g i i b i?khi nh n thì x lý ra sao?ệ đượ ử đ ở ậ ử
4
Khoa KTMT V c Lungũ Đứ
Các Cơ Chế Liên Lạc
Pipe
Truyền dữ liệu không cấu trúc
5
Khoa KTMT V c Lungũ Đứ
Các Cơ Chế Liên Lạc
Shared Memory
Mâu thuẫn truy xuất => nhu cầu đồng bộ hoá
6
Khoa KTMT V c Lungũ Đứ
Các Cơ Chế Liên Lạc
Message
Liên lạc trên môi trường phân tán
Liên kết tiềm ẩn
Send(message):gởimộtthôngđiệp
Receive(message):nhậnmộtthôngđiệp
Liên kết tường minh
Send(destination,message):gởimộtthôngđiệpđếndestination
Receive(source,message):nhậnmộtthôngđiệptừsource
7
Khoa KTMT V c Lungũ Đứ
Các Cơ Chế Liên Lạc
Socket: là một thiết bị truyền thông hai chiều như tập tin
Mỗi Socket là một thành phần trong một mối nối giữa các máy
trong mạng
Các thuộc tính của socket:
Domaine:địnhnghĩadạngthứcđịachỉvàcácnghithứcsửdụng.Cónhiềudomaines,vídụ
UNIX,INTERNET,XEROX_NS,
Type:địnhnghĩacácđặcđiểmliênlạc
a)độtincậy
b)độbảotoànthứtựdữliệu
c)Lặplạidữliệu
d)Chếđộnốikết
e)Bảotoàngiớihạnthôngđiệp
f)Khảnănggởithôngđiệpkhẩn
8
Khoa KTMT V c Lungũ Đứ
Các Cơ Chế Liên Lạc
Để thực hiện liên lạc bằng socket, cần tiến hành các
thao tác ::
Tạolậphaymởmộtsocket
Gắnkếtmộtsocketvớimộtđịachỉ
Liênlạc:cóhaikiểuliênlạctùythuộcvàochếđộnốikết:
Liênlạctrongchếđộkhôngliênkết
Liênlạctrongchếđộnốikết
Hủymộtsocket
VD: Giao tiếp trong TCP
9
Khoa KTMT V c Lungũ Đứ
Race condition
hits = hits + 1
read hits
hits =hits + 1
read hits
P1
P2
hits = 1, 2 ?
hits = 0
time
Kết quả cuối cùng không dự đoán được !
P1 và P2 chia sẻ biến chung hits
10
Khoa KTMT V c Lungũ Đứ
Vùng tranh chấp (Miền găng - critical section)
hits = hits + 1
read hits
hits = hits + 1
read hits
P1
P2
CS
CS
CS là đoạn chương trình có khả năng gây ra hiện
tượng race condition
11
Khoa KTMT V c Lungũ Đứ
Giải pháp tổng quát
Bảo đảm tính “độc quyền truy xuất” miền găng tại
một thời điểm
hits = hits + 1
P1
P2
hits = 2
hits = 0
time
hits = hits + 1
12
Khoa KTMT V c Lungũ Đứ
Mô hình đảm bảo độc quyền truy xuất
Kiểm tra và dành quyền vào CS
CS;
Từ bỏ quyền sử dụng CS
13
Khoa KTMT V c Lungũ Đứ
Hẹn hò
Làm thế nào bảo đảm trình tự thực hiện Job1 -
Job2 ?
P1
P2
Job1;
Job2;
14
Khoa KTMT V c Lungũ Đứ
Giải pháp
Hai tiến trình cần trao đổi thông tin về diễn tiến
xử lý
P1
P2
Job1;
Job2;
15
Khoa KTMT V c Lungũ Đứ
Mô hình tổ chức phối hợp hoạt động giữa hai tiến
trình
P1
P2
Job1;
Chờ ;
Báo
hiệu ;
Job2;