Bài giảng Hệ điều hành nâng cao - Bài 2: Các mô hình xử lý đồng hành - Trần Hạnh Nhi

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

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 ? ).

 

ppt 12 trang kimcuc 10240
Bạn đang xem tài liệu "Bài giảng Hệ điều hành nâng cao - Bài 2: Các mô hình xử lý đồng hành - Trần Hạnh Nhi", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Bài giảng Hệ điều hành nâng cao - Bài 2: Các mô hình xử lý đồng hành - Trần Hạnh Nhi

Bài giảng Hệ điều hành nâng cao - Bài 2: Các mô hình xử lý đồng hành - Trần Hạnh Nhi
1 
Bài 2 : CÁC MÔ HÌNH XỬ LÝ ĐỒNG HÀNH 
XỬ LÝ ĐỒNG HÀNH 
VÌ SAO ? 
 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 
IO 
CPU 
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ý đ ồng hà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. 
 Aû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 
Khái niệm tiế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 
T3 
11 
Tiểu trình hạt nhân (Kernel thread) 
Khái niệm tiểu trình đư ợc xây dựng bên trong hạt nhân 
T1 
T2 
HDH 
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 
T2 
User mode 
Kernel mode 
T3 
LWP1 
LWP2 
P1 
P2 

File đính kèm:

  • pptbai_giang_he_dieu_hanh_nang_cao_bai_2_cac_mo_hinh_xu_ly_dong.ppt