Lý thuyết hệ điều hành - Chương 4
Số trang: 27
Loại file: pdf
Dung lượng: 228.49 KB
Lượt xem: 24
Lượt tải: 0
Xem trước 3 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Các quá trình đồng thời Vấn đề tranh chấp và tính loại trừ tương hỗ Giải quyết tranh chấp. Phương pháp phần mềm Phương pháp phần cứng Nhờ sự hỗ trợ của hệ điều hành. Các lệnh phần mềm là lệnh đơn vị,Các quá trình đồng thời có thể không đồng bộnhau.
Nội dung trích xuất từ tài liệu:
Lý thuyết hệ điều hành - Chương 4 Chương 4 ĐỒNG BỘ GIỮA CÁC QUÁ TRÌNH ĐỒNG THỜI -1-Baøi giaûng moân heä ñieàu haønh Vuõ Leâ Huøng Khoa CNTT – ÑHBK TP.HCM CHƯƠNG 4 : ĐỒNG BỘ GIỮA CÁC QUÁ TRÌNH ĐỒNG THỜI Các quá trình đồng thời Vấn đề tranh chấp và tính loại trừ tương hỗ Giải quyết tranh chấp Phương pháp phần mềm – Phương pháp phần cứng – Nhờ sự hỗ trợ của hệ điều hành – Một số bài toán về đồng bộ -2-Baøi giaûng moân heä ñieàu haønh Vuõ Leâ Huøng Khoa CNTT – ÑHBK TP.HCM CÁC QUÁ TRÌNH ĐỒNG THỜI Xử lý đồng thời Xử lý song song P1 P1 CPU CPU P2 P2 CPU P3 P3 -3-Baøi giaûng moân heä ñieàu haønh Vuõ Leâ Huøng Khoa CNTT – ÑHBK TP.HCM CẤU TRÚC “parbegin-parend” Dùng để mô tả việc xử lý đồng thời / song song parbegin Phát biểu 1; Phát biểu 2; ... Phát biểu n parend; Một lệnh chỉ bắt đầu xử lý song song các công việc được nêu sau đó. Phát biểu sau parbegin-parend chỉ được thực hiện khi mọi công việc trong parbegin..parend đã kết thúc. -4-Baøi giaûng moân heä ñieàu haønh Vuõ Leâ Huøng Khoa CNTT – ÑHBK TP.HCM VÍ DỤ Tính biểu thức sau: Có thể xử lý song song: parbegin temp1 := -x; S := -x + 2*y+(x + 2) * (y-1) temp2 := 2*y; temp3 := x+2; Các công việc cần tính tuần tự : temp4:= y-1 parend; –x 1. parbegin 2* y temp5 := temp1 + temp2; 2. temp6 := temp3 * temp4 x+2 3. parend; y –1 S:= temp5 +temp6; 4. -x + 2*y 5. (x + 2) * (y – 1) 6. –x +2*y + (x + 2) * (y – 1) 7. -5-Baøi giaûng moân heä ñieàu haønh Vuõ Leâ Huøng Khoa CNTT – ÑHBK TP.HCM VẤN ĐỀ TRANH CHẤP Ví dụ 1: P1: P2: a:=0; a:=10; read(a); 1. 1. parbegin b:=20; a:=a+1; 2. 2. P1; a:=a+b; print(a); 3. 3. P2; print(a); parend 4. Ví dụ 2 : a:=100; P: Q: parbegin a:=a+1; a:=a+2; P; 1. 1. Q; parend print(a); -6-Baøi giaûng moân heä ñieàu haønh Vuõ Leâ Huøng Khoa CNTT – ÑHBK TP.HCM VÍ DỤ 2 -7-Baøi giaûng moân heä ñieàu haønh Vuõ Leâ Huøng Khoa CNTT – ÑHBK TP.HCM GIẢI QUYẾT TRANH CHẤP Nguyên tắc : khi quá trình nào đang thao tác trên tài nguyên thì quá trình khác phải đợi cho đến khi quá trình đang thao tác hoàn tất công việc Đảm bảo tính loại trừ tương hỗ (mutual exclusion) trên vùng tranh chấp (critical section) P3 P4 P1 ...
Nội dung trích xuất từ tài liệu:
Lý thuyết hệ điều hành - Chương 4 Chương 4 ĐỒNG BỘ GIỮA CÁC QUÁ TRÌNH ĐỒNG THỜI -1-Baøi giaûng moân heä ñieàu haønh Vuõ Leâ Huøng Khoa CNTT – ÑHBK TP.HCM CHƯƠNG 4 : ĐỒNG BỘ GIỮA CÁC QUÁ TRÌNH ĐỒNG THỜI Các quá trình đồng thời Vấn đề tranh chấp và tính loại trừ tương hỗ Giải quyết tranh chấp Phương pháp phần mềm – Phương pháp phần cứng – Nhờ sự hỗ trợ của hệ điều hành – Một số bài toán về đồng bộ -2-Baøi giaûng moân heä ñieàu haønh Vuõ Leâ Huøng Khoa CNTT – ÑHBK TP.HCM CÁC QUÁ TRÌNH ĐỒNG THỜI Xử lý đồng thời Xử lý song song P1 P1 CPU CPU P2 P2 CPU P3 P3 -3-Baøi giaûng moân heä ñieàu haønh Vuõ Leâ Huøng Khoa CNTT – ÑHBK TP.HCM CẤU TRÚC “parbegin-parend” Dùng để mô tả việc xử lý đồng thời / song song parbegin Phát biểu 1; Phát biểu 2; ... Phát biểu n parend; Một lệnh chỉ bắt đầu xử lý song song các công việc được nêu sau đó. Phát biểu sau parbegin-parend chỉ được thực hiện khi mọi công việc trong parbegin..parend đã kết thúc. -4-Baøi giaûng moân heä ñieàu haønh Vuõ Leâ Huøng Khoa CNTT – ÑHBK TP.HCM VÍ DỤ Tính biểu thức sau: Có thể xử lý song song: parbegin temp1 := -x; S := -x + 2*y+(x + 2) * (y-1) temp2 := 2*y; temp3 := x+2; Các công việc cần tính tuần tự : temp4:= y-1 parend; –x 1. parbegin 2* y temp5 := temp1 + temp2; 2. temp6 := temp3 * temp4 x+2 3. parend; y –1 S:= temp5 +temp6; 4. -x + 2*y 5. (x + 2) * (y – 1) 6. –x +2*y + (x + 2) * (y – 1) 7. -5-Baøi giaûng moân heä ñieàu haønh Vuõ Leâ Huøng Khoa CNTT – ÑHBK TP.HCM VẤN ĐỀ TRANH CHẤP Ví dụ 1: P1: P2: a:=0; a:=10; read(a); 1. 1. parbegin b:=20; a:=a+1; 2. 2. P1; a:=a+b; print(a); 3. 3. P2; print(a); parend 4. Ví dụ 2 : a:=100; P: Q: parbegin a:=a+1; a:=a+2; P; 1. 1. Q; parend print(a); -6-Baøi giaûng moân heä ñieàu haønh Vuõ Leâ Huøng Khoa CNTT – ÑHBK TP.HCM VÍ DỤ 2 -7-Baøi giaûng moân heä ñieàu haønh Vuõ Leâ Huøng Khoa CNTT – ÑHBK TP.HCM GIẢI QUYẾT TRANH CHẤP Nguyên tắc : khi quá trình nào đang thao tác trên tài nguyên thì quá trình khác phải đợi cho đến khi quá trình đang thao tác hoàn tất công việc Đảm bảo tính loại trừ tương hỗ (mutual exclusion) trên vùng tranh chấp (critical section) P3 P4 P1 ...
Tìm kiếm theo từ khóa liên quan:
hệ thống file hệ thống UNIX hệ điều hành Linux quản lý bộ nhớ bộ nhớ ảo Quản lý đĩaGợi ý tài liệu liên quan:
-
183 trang 318 0 0
-
80 trang 262 0 0
-
Đề tài nguyên lý hệ điều hành: Nghiên cứu tìm hiểu về bộ nhớ ngoài trong hệ điều hành Linux
19 trang 245 0 0 -
117 trang 233 1 0
-
Giáo trình Hệ điều hành: Phần 2
53 trang 219 0 0 -
Giáo trình Hệ điều hành Linux (Ngành: Công nghệ thông tin) - CĐ Công nghiệp Hải Phòng
103 trang 194 0 0 -
118 trang 184 0 0
-
Bài giảng Nguyên lý hệ điều hành (Bài giảng tuần 6) - Nguyễn Hải Châu
10 trang 172 0 0 -
Mẹo hay trong sử dụng máy tính: Phần 2
181 trang 172 0 0 -
271 trang 163 0 0