
GV: Đỗ Công Đức
Khoa khoa học máy tính
NGUYÊN LÝ HỆ ĐIỀU HÀNH
(3 Tín chỉ)

6/28/2014 Chương 2. Quản lý tiến trình 2
Chương 2: QUẢN LÝ TIẾN TRÌNH
Chương 2: QUẢN LÝ TIẾN TRÌNH
2.1. Các mô hình xử lý đồng hành
2.2. Tổ chức và quản lý tiến trình
2.3. Điều phối tiến trình
2.4. Tài nguyên găng và đoạn găng
2.5. Các giải pháp về đồng bộ hóa
2.6. Bế tắc và chống bế tắc

6/28/2014 Chương 2. Quản lý tiến trình 3
CÁC MÔ HÌNH XỬ LÝ ĐỒNG HÀNH
CÁC MÔ HÌNH XỬ LÝ ĐỒNG HÀNH
2.1.1 Nhu cầu xử lý đồng hành (1/2)
Đa số các HĐH hiện nay đều cho phép người dùng xử lý nhiều tác vụ
đồng thời cùng một lúc trên máy tính để:
Tăng hiệu suất sử dụng CPU: các công việc phải trải qua nhiều chu
kỳ xử lý (xử dụng CPU) và chu kỳ nhập xuất (IO) xen kẽ nhau
CPUIOCPUIOCPU
Tác vụ 2
Tác vụ 1
IO
CPU
CPUCPUIOCPU
IOIOCPUIOCPU
Nếu chỉ có 1 tiến trình duy nhất trong hệ thống, thì vào các chu kỳ IO
của tác vụ, CPU sẽ hoàn toàn nhàn rỗi. Ý tưởng tăng cường số lượng
tác vụ trong hệ thống là để tận dụng CPU: nếu tác vụ 1 xử lý IO, thì
có thể sử dụng CPU để thực hiện tác vụ 2

6/28/2014 Chương 2. Quản lý tiến trình 4
CÁC MÔ HÌNH XỬ LÝ ĐỒNG HÀNH
CÁC MÔ HÌNH XỬ LÝ ĐỒNG HÀNH
2.1.1 Nhu cầu xử lý đồng hành (2/2)
Tăng tốc độ xử lý: xử lý song song nếu được xây dựng thành nhiều
modul hoạt động đồng thời thì sẽ tiết kiệm được thời gian xử lý
-Ví dụ: Tính giá trị của biểu thức a*b + c*d
Nếu tiến hành song song tính a*b và c*d thì giải quyết bài toán nhanh
hơn tính tuần tự a*b, c*d và sau đó mới tính tổng
Trong các trường hợp đó, cần có một mô hình xử lý đồng hành thích
hợp. Trên máy tính có cấu hình nhiều CPU, hỗ trợ xử lý song song
(multiprocessing) thật sự, điều này sẽ giúp tăng hiệu quả thi hành của
hệ thống đáng kể

6/28/2014 Chương 2. Quản lý tiến trình 5
CÁC MÔ HÌNH XỬ LÝ ĐỒNG HÀNH
CÁC MÔ HÌNH XỬ LÝ ĐỒNG HÀNH
2.1.2 Tiến trình và mô hình đa tiến trình (1/2)
Sự đa chương của máy tính là sự thực hiện nhiều tác vụ đồng thời.
Để thực hiện điều này HĐH xử lý mô hình song song giả lập. Nghĩa
là chuyển đổi bộ xử lý qua lại giữa các tiến trình trong khoảng 1%
hoặc 1/10 mili giây để duy trì hoạt động của chương trình.
Để hoàn thành tác vụ của mình, một tiến trình có thể cần đến một số
tài nguyên như CPU, bộ nhớ chính, các tập tin và thiết bị
Phân biệt chương trình và tiến trình: chương trình là một thực thể
thụ động, khi thi hành thì thực thi các tác vụ, chỉ thị thì chương trình
chuyển thành tiến trình là một thực thể hoạt động, xác định chỉ thị
tiếp theo thi hành và cung cấp các tài nguyên cho tiến trình