Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 12 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
12
Dung lượng
230 KB
Nội dung
1 Bài 2 : CÁCMÔHÌNH XỬ LÝĐỒNGHÀNH XỬ LÝĐỒNGHÀNH XỬ LÝĐỒNGHÀNH VÌ SAO ? VÌ SAO ? VẤN VẤN ĐỀ ? ĐỀ ? 2 Xử lýđồng hành, để tăng hiệu suất sử dụng CPU CPU IO CPU IO CPU Job 1 Job 1 IO CPU IOCPU Job 1 CPU IO CPU Job 2 CPU Job 1 Job 1 Job 1 Job 1 3 Xử lýđồng hành, để tăng tốc độ xử lý Job : kq = a*b + c*d; Xử lý tuần tự : Xử lýđồnghành : kq1 = a * b; kq2 = c* d; kq = kq1 + kq2; kq = kq1 + kq2; kq2 = c*d;kq1 = a*b; 4 Xử lýđồng hành, những khó khăn ? HĐH : “ Giải quyết nhiều công việc đồng thời, đâu có dễ ! - Tài nguyên giới hạn, ứng dụng “vô hạn” - Nhiều hoạt động đan xen ??? Phân chia tài nguyên ? ??? Chia sẻ tài nguyên ? ??? Bảo vệ? Excel Visual C++ CDplayer Winword 5 Giải pháp HĐH : “ Ai cũng có phần khi đến lượt mà ! ” - “Chia để trò”, cô lập các hoạt động. - Mỗi thời điểm chỉ giải quyết 1 yêu cầu. - o hoá tài nguyên : biến ít thành nhiều Winword CDPlayer Visual C ++ Excel 6 Thuật ngữ Concurrency (đồng hành): môhình xử lý nhiều tác vụ đồng thời. Multitasking (đa nhiệm) : cho phép nhiều tác vụ/ công việc được xử lýđồng thời Multiprogramming (đa chương) : cho phép nhiều chương trình được thực hiện đồng thời (trên 1 CPU) Multiprocessing (đa xử lý): nhiều bộ xử lý làm việc đồng thời 7 Khaùi nieäm tieán trình P2 int a; IP P1 int a; IP 8 Môhình đa tiến trình (MultiProcesses) Hệ thống là một tập các tiến trình hoạt độngđồng thời Các tiến trình độc lập với nhau => không có sự trao đổi thông tin hiển nhiên winword Visual C CDplayer Excel OS 9 Môhình đa tiểu trình (MultiThreads) Muốn nhiều dòng xử lýđồng thời cùng chia sẻ tài nguyên (server, OS, các chương trình tính toán song song) alta vista TIỂU TRÌNH (THREAD) 10 Khác biệt giữa Tiểu trình & Tiến trình Tiểu trình : 1 dòng xử lý Tiến trình : 1 không gian đòa chỉ 1 hoặc nhiều tiểu trình Các tiến trình là độc lập Các tiểu trình trong cùng 1 tiến trình không có sự bảo vệ lẫn nhau (cần thiết ? ). P1 int a; T1 T2 T 3 [...]...Tiểu trình hạt nhân (Kernel thread) T1 T2 User mode System call HDH Kernel mode Khái niệm tiểu trình được xây dựng bên trong hạt nhân 11 Tiểu trình người dùng (User thread) T1 T2 LWP2 LWP1 P1 T3 P2 Kernel User mode Kernel mode Khái niệm tiểu trình được hỗ trợ bởi một thư viện hoạt động trong user mode 12 . System call User mode Kernel mode 12 Tiểu trình người dùng (User thread) Khái niệm tiểu trình được hỗ trợ bởi một thư viện hoạt động trong user mode T1 Kernel. được hỗ trợ bởi một thư viện hoạt động trong user mode T1 Kernel T2 User mode Kernel mode T3 LWP1 LWP2 P1 P2