Professional Documents
Culture Documents
HỆ ĐIỀU HÀNH
A
S0 S1 S2 S3 S4 S5 . . . . Sn-1 Sn Sn+1 . . . .
B
Các loại tiến trình
• Tiến trình tuần tự là các tiến trình mà điểm khởi
tạo của nó là điểm kết thúc của tiến trình trước đó.
• Tiến trình song song là các tiến trình mà điểm khởi
tạo của tiến trình này nằm ở thân của các tiến
trình khác:
– Tiến trình song song độc lập: Hoạt động song song
nhưng không có quan hệ thông tin với nhau.
– Tiến trình song song có quan hệ thông tin: Trong quá
trình hoạt động các tiến trình trao đổi thông tin với
nhau.
Các loại tiến trình
– Tiến trình song song phân cấp: Tiến trình hoạt động
song song, tiến trình khởi tạo được gọi là tiến trình
cha. Tiến trình con tiến trình được tạo gọi là tiến
trình con nhận tài nguyên ở đâu, từ tiến trình cha
hay từ hệ thống 2 mô hình quản lý tài nguyên:
Mô hình tập trung, và mô hình phân tán.
Các loại tiến trình
– Tiến trình song song đồng mức: Là các tiến trình
hoạt động song song sử dụng chung tài nguyên,
mỗi tiến trình sau một khoảng thời gian chiếm giữ
tài nguyên phải tự động trả lại tài nguyên cho tiến
trình kia.
• Như vậy, tiến trình tuần tự chỉ xuất hiện trong hệ
điều hành đơn nhiệm, đa chương. Tiến trình song
song xuất hiện trên cả hệ điều hành đa nhiệm đa
chương, trên cả hệ thống uniprocessor và
multiprocessor. Tuy nhiên, sự song song thực chỉ
có trong hệ thống multiprocessor.
Các loại tiến trình
Các loại tiến trình
• Nếu nhìn ở góc độ người dùng thì có 2 loại tiến
trình:
- Tiến trình của hệ điều hành: Được chạy ở chế
độ đặc quyền và được truy xuất đến các vùng
dữ liệu được bảo vệ của hệ thống.
- Tiến trình của chương trình ứng dụng: Chạy ở
chế độ không đặc quyền và không được truy
xuất đến các dữ liệu được bảo vệ một cách trực
tiếp mà phải thông qua lời gọi hệ thống.
Mô hình tiến trình
• Về nguyên tắc, hệ thống phải có nhiều processor,
mỗi processor có nhiệm vụ thực hiện một chương
trình.
• Tuy nhiên, mong muốn là thực hiện sự đa
chương trên các hệ thống chỉ có một processor
Sử dụng mô hình tiến trình để tạo ra sự song
song giả hay tạo ra các processor logic từ
processor vật lý.
Mô hình tiến trình
• Hệ điều hành sẽ chia các chương trình thành các
tiến trình, khởi tạo, đưa vào hệ thống và cấp phát
đầy đủ tài nguyên (trừ processor) cho tiến trình và
đưa các tiến trình sang trạng thái sẵn sàng.
• Hệ điều hành cấp processor cho một tiến trình trong
số các tiến trình ở trạng thái sẵn sàng, sau một
khoảng thời gian hệ điều hành thu hồi processor của
tiến trình này để cấp cho một tiến trình sẵn sàng
khác.
• Khoảng thời gian đó là rất nhỏ tạo ra cảm giác các
tiến trình đều sở hữu processor song song giả
Mô hình tiến trình
Mô hình tiến trình
• Ưu điểm:Tiết kiệm được bộ nhớ vì không phải nạp
tất cả chương trình vào bộ nhớ mà chỉ nạp các tiến
trình cần thiết nhất.
• Cho phép các chương trình hoạt động song song
nên tốc độ xử lý của toàn hệ thống tăng lên và khai
thác tối đa thời gian xử lý của processor.
• Việc thu hồi processor chuyển cho tiến trình khác là
những vấn đề phức tạp. Bộ phận thực hiện chức
năng này của hệ điều hành được gọi là bộ điều phối
(dispatcher) tiến trình.
Mô hình tiểu trình
• Một số ứng dụng cần nhiều dòng xử lý cùng chia sẻ
một không gian địa chỉ tiến trình, điều này đưa đến một
cơ chế thực thi mới, được gọi là tiểu trình.
• Tiểu trình là một đơn vị xử lý cơ bản trong hệ thống, nó
hoàn toàn tương tự như tiến trình. Tức là nó cũng phải xử
lý tuần tự các chỉ thị máy, nó cũng sở hữu con trỏ lệnh, một
tập các thanh ghi, và một không gian stack riêng.
• Một tiến trình bao gồm nhiều tiểu trình.
Các trạng thái tiến trình
• Tiến trình hai trạng thái.
• Tiến trình ba trạng thái.
• Tiến trình bốn trạng thái.
• Tiến trình năm trạng thái.
Tiến trình hai trạng thái
• Hệ điều hành chỉ cho phép tiến trình tồn tại ở một
trong hai trạng thái: Not Running và Running.
• Khi có một tiến trình mới, hệ điều hành đưa tiến
trình đó vào hệ thống ở trạng thái Not Running. Nếu
tiến trình đang thực hiện bị ngắt thì bộ điều phối tiến
trình sẽ thu hồi lại processor của tiến trình này và
chọn một tiến trình ở trạng thái Not running để cấp
processor. Sau đó, chuyển nó sang trạng thái
Running. Tiến trình bị thu hồi processor sẽ được
chuyển về lại trạng thái Not running.
Tiến trình hai trạng thái