Giáo án Hệ điều hành - Chương 6: Liên lạc giữa các tiến trình - Hà Lê Hoài Trung
Bạn đang xem tài liệu "Giáo án Hệ điều hành - Chương 6: Liên lạc giữa các tiến trình - Hà Lê Hoài Trung", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
- giao_an_he_dieu_hanh_chuong_6_lien_lac_giua_cac_tien_trinh_h.pdf
Nội dung text: Giáo án Hệ điều hành - Chương 6: Liên lạc giữa các tiến trình - Hà Lê Hoài Trung
- Chương V-I: Liên lạc giữa các Tiến Trình CƠ CHẾ ? TRAO ĐỔI THÔNGVẤN TIN ĐỀ GIỮA CÁC TIẾN TRÌNH GIẢI ? PHÁP ? Khoa KTMT 1
- Nhu Cầu Liên Lạc Q . Chia sẻ thông tin L p R . Phối hợp tăng tốc độ xử lý JOB p L Q Khoa KTMT 2
- Các Cơ Chế Liên Lạc Signal : Không truyền được dữ liệu Tín hiệu Mô tả SIGINT Người dùng nhấn phím DEL để ngắt xử lý tiến trình SIGQUIT Yêu cầu thoát xử lý SIGILL Tiến trình xử lý một chỉ thị bất hợp lệ SIGKILL Yêu cầu kết thúc một tiến trình SIGFPT Lỗi floating – point xảy ra ( chia cho 0) SIGPIPE Tiến trình ghi dữ liệu vào pipe mà không có reader SIGSEGV Tiến trình truy xuất đến một địa chỉ bất hợp lệ SIGCLD Tiến trình con kết thúc SIGUSR1 Tín hiệu 1 do người dùng định nghĩa SIGUSR2 Tín hiệu 2 do người dùng định nghĩa Các tín hiệu được gửi đi bởi?khi nhận thì xử lý ra sao? Khoa KTMT 3
- Các Cơ Chế Liên Lạc Pipe Truyền dữ liệu không cấu trúc Khoa KTMT 4
- Các Cơ Chế Liên Lạc Shared Memory Mâu thuẫn truy xuất => nhu cầu đồng bộ hoá Khoa KTMT 5
- 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ởi một thông điệp Receive(message) : nhận một thông điệp Liên kết tường minh Send(destination, message) : gởi một thông điệp đến destination Receive(source,message) : nhận một thông điệp từ source Khoa KTMT 6
- 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: định nghĩa dạng thức địa chỉ và các nghi thức sử dụng. Có nhiều domaines, ví dụ UNIX, INTERNET, XEROX_NS, Type: định nghĩa các đặc điểm liên lạc a) độ tin cậy b) độ bảo toàn thứ tự dữ liệu c) Lặp lại dữ liệu d) Chế độ nối kết e) Bảo toàn giới hạn thông điệp f) Khả năng gởi thông điệp khẩn Khoa KTMT 7
- 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ạo lập hay mở một socket Gắn kết một socket với một địa chỉ Liên lạc : có hai kiểu liên lạc tùy thuộc vào chế độ nối kết: Liên lạc trong chế độ không liên kết - UDP Liên lạc trong chế độ nối kết - TCP Hủy một socket VD: Giao tiếp trong TCP Khoa KTMT 8
- Race condition . P1 và P2 chia sẻ biến chung hits hits = 0 P2 time P1 read hits read hits hits =hits + 1 hits = hits + 1 hits = 1, 2 ? Kết quả cuối cùng không dự đoán được ! Khoa KTMT 9
- Vùng tranh chấp (Miền găng - critical section) P1 P2 read hits CS read hits hits = hits + 1 CS hits = hits + 1 CS là đoạn chương trình có khả năng gây ra hiện tượng race condition Khoa KTMT 10
- Giải pháp tổng quát hits = 0 P2 time P1 hits = hits + 1 hits = hits + 1 hits = 2 Bảo đảm tính “độc quyền truy xuất” miền găng tại một thời điểm Khoa KTMT 11
- 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 Khoa KTMT 12
- Hẹn hò P1 P2 Job1; Job2; Làm thế nào bảo đảm trình tự thực hiện Job1 - Job2 ? Khoa KTMT 13
- Giải pháp P1 P2 Job1; Job2; Hai tiến trình cần trao đổi thông tin về diễn tiến xử lý Khoa KTMT 14
- 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; Khoa KTMT 15