-1-Bài giảng môn hệ điều hành Vũ Lê Hùng Khoa CNTT – ĐHBK TP.
HCM
Chương 2
Q TRÌNH
-2-
Bài giảng môn hệ điều hành Vũ Lê Hùng Khoa CNTT – ĐHBK TP.
HCM
CHƯƠNG 2 : Q TRÌNH
Khái niệm về q trình
Trạng thái của q trình
Khối điều khiển q trình
Chuyển đổi trạng thái q trình
Các tác vụ thực hiện đ/v q trình
Ngắt qng
Chuyển ngữ cảnh
Bài tập
-3-
Bài giảng môn hệ điều hành Vũ Lê Hùng Khoa CNTT – ĐHBK TP.
HCM
Q TRÌNH (PROCESS)
Một chương trình đang thực thi
Có thời gian sống (life cycle)
Là một thực thể tích cực
Có nhiều trạng thái và có thể chuyển trạng thái
Một q trình có các thơng tin: bộ đếm chương
trình, stack, vùng chứa dữ liệu và biến mơi
trường
Trong một số tài liệu, q trình (proces)
cơng việc (job) tác vụ (task)
-4-
Bài giảng môn hệ điều hành Vũ Lê Hùng Khoa CNTT – ĐHBK TP.
– Bộ đếm chương trình
– Vùng lưu giá trị thanh ghi CPU
– Độ ưu tiên của q trình
– Thơng tin định vị bộ nhớ q trình
– Thơng tin bảo mật
– Con trỏ đếùn các q trình cha, con
– …
-6-
Bài giảng môn hệ điều hành Vũ Lê Hùng Khoa CNTT – ĐHBK TP.
HCM
TRẠNG THÁI Q TRÌNH
Sẵn sàng (ready)
– Q trình đợi để gán cho CPU xử lý
Thực thi (running)
– Q trình đang được CPU thực thi các lệnh
Bị chặn (blocked)
– Q trình đợi một sự kiện nào đó
– Sự kiện có thể là do việc xuất nhập dữ liệu hoặc từ một
q trình khác tạo ra
-7-
Bài giảng môn hệ điều hành Vũ Lê Hùng Khoa CNTT – ĐHBK TP.
HCM
CHUYỂN TRẠNG THÁI Q TRÌNH
READY
RUNNING
BLOCKED
Dispatch
Timer run-out
Wake-up
Block
– Bản thân q trình
– Hệ thống/q trình khác
Xảy ra khi
– Cần giám sát q trình
– Hệ thống có sự cố
– Hệ thống q tải
Phục hồi (resume)
– Nhờ HĐH hoặc q trình khác
-11-
Bài giảng môn hệ điều hành Vũ Lê Hùng Khoa CNTT – ĐHBK TP.
HCM
LƯỢC ĐỒ CHUYỂN TRẠNG THÁI
Suspend
Resume
READY
RUNNING
BLOCKED
Dispatch
Timer run-out
Wake-up
Block
New Exited
SUSPENDED READY
SUSPENDED BLOCKED
Wake-up
-12-
Bài giảng môn hệ điều hành Vũ Lê Hùng Khoa CNTT – ĐHBK TP.
HCM
TÁC VỤ TRÊN Q TRÌNH
Tạo q trình
CÁC LOẠI INTERRUPT
Supervisor call (SVC) interrupt: khi q trình u
cầu dịch vụ của hệ thống
I/O interrupt: do các thiết bị I/O sinh ra khi chuyển
trạng thái
External interrupt: sinh ra từ đồng hồ hệ thống, bàn
phím
Restart interrupt: ngắt khởi động lại máy
Program check: sinh ra khi chương trình thực thi lệnh
bị lỗi (chia cho 0, tràn số, …)
Machine check: do nhà sản xuất tạo ra dành riêng cho
việc kiểm tra phần cứng
-16-
Bài giảng môn hệ điều hành Vũ Lê Hùng Khoa CNTT – ĐHBK TP.
HCM
CHUYỂN NGỮ CẢNH
(CONTEXT SWITCHING)
Chuyển xử lý từ q trình này sang q trình khác.
Xảy ra khi có interrupt
Qui trình:
– Lưu trạng thái của q trình hiện hành
– Chọn q trình mới để xử lý
– Đưa trạng thái của q trình mới vào phần cứng để xử lý
Một context bao gồm:
– tập thanh ghi chứa thơng tin trạng thái q trình về trạng thá
i CPU,
bộ nhớ … của q trình.
Program Status Word (PSW).
-17-
Bài giảng môn hệ điều hành Vũ Lê Hùng Khoa CNTT – ĐHBK TP.