Multi Process
Nhóm 1:
Lục Đức Tuấn
Lê Hồng Dũng
Phạm Văn Hoàng
Lê Minh Châu
Giảng viên: TS. Trần Ngọc Thịnh
Nội dung
Các hệ thống xử lý
Process
Lập lịch cho Process
Tài liệu tham khảo
Vitual Memory
2
Hệ thống xử lý theo lô
Hệ thống xử lý theo lô (Batch Systems)
Trong hệ thống này một thời điểm chỉ có một
chương trình được thực thi, các chương trình
khác phải đợi
Vitual Memory
3
Hệ thống xử lý đa chương
Hệ thống xử lý đa chương (MultiProgramming
Systems)
Tại một thời điểm có nhiều công việc trong bộ nhớ
Khi một công việc (P1) đang thực hiện và có yêu cầu
nhập/xuất thì CPU sẽ chuyển sang thực hiện công
việc khác (P2)
CPU thực hiện tiếp tục khi công việc kết thúc
nhập/xuất
(dừng P2 và thực
hiện P1)
Vitual Memory
4
Hệ thống xử lý đa nhiệm
Hệ thống xử lý đa nhiệm (MultiTasking
Systems): là mở rộng của hệ thống xử lý đa
chương, còn gọi là hệ thống chia sẻ thời gian
(Time-Sharing Systems)
Các công việc luân phiên sử dụng CPU
Vitual Memory
5
Hệ thống đa xử lý
Hệ thống đa xử lý (Multi Processor Systems): hệ
thống xử lý song song (Parallel Systems)
Máy tính có nhiều bộ xử lý cùng chia sẻ tài nguyên hệ
thống (bus, đồng hồ, bộ nhớ, thiết bị ngoại vi…)
Vitual Memory
6
Hệ thống đa xử lý
Ưu điểm:
Sự hỏng hóc của một bộ xử lý không ảnh hưởng đến
toàn bộ hệ thống
Hệ thống thực hiện nhanh do các công việc được xử
lý đồng thời trên các bộ xử lý khác nhau
Các công việc liên lạc với nhau dễ dàng bằng cách
sử dụng bộ nhớ dung chung
Vitual Memory
7
Nội dung
Các hệ thống xử lý
Process
Lập lịch cho Process
Tài liệu tham khảo
Vitual Memory
8
Quá trình - Process
Định nghĩa: Quá trình là một chương trình đang
thực thi. Sự thực thi của quá trình diễn ra theo
cách thức tuần tự
Một quá trình bao gồm:
Mã lệnh chương trình (program code)
Bộ đếm chương trình (program counter) và các thanh
ghi của CPU
Ngăn xếp (stack)
Phần dữ liệu (data section)
Có thể gồm phần bộ nhớ cấp phát động khi quá trình
chạy (heap)
Vitual Memory
9
Trạng thái của quá trình
Một quá trình có thể có một trong các trạng thái
sau:
New: quá trình đang được khởi tạo
Running: các chỉ thị của quá trình đang được thực
thi
Waiting: quá trình đang chờ đợi một sự kiện nào đó
xuất hiện (hoàn thành nhập/xuất, chờ đợi một tín
hiệu)
Ready: quá trình đang đợi để được sử dụng CPU
Terminated: quá trình đã kết thúc
Vitual Memory
10
Khối điều khiển quá trình
PCB – Process Control Block: là thông tin kết
hợp với mỗi quá trình
Trạng thái của quá trình
Bộ đếm chương trình
Các thanh ghi
Thông tin về định thời sử dụng
CPU
Thông tin về quản lý bộ nhớ
Thông tin về chi phí
Thông tin về trạng thái nhập/xuất
Vitual Memory
11
Chuyển ngữ cảnh
Khi CPU chuyển sang một quá trình khác, hệ
thống phải lưu lại trạng thái của quá trình và nạp
trạng thái đã lưu trước đây của quá trình. Tác vụ
này gọi là context switch
Thời gian cho context switch là một phí tổn. Thời
gian này phụ thuộc vào hỗ trợ của phần cứng
Tốc độ chuyển phụ thuộc vào tốc độ bộ nhớ, số
lượng thanh ghi phải được sao chép và các chỉ thị
đặc biệt (nạp, lưu trữ các reg)
Tốc độ thường từ 1 đến 100
Có thể là thắt cổ chai
Vitual Memory
12
CPU phục vụ các quá trình
PCB được xem như
một nơi cất giữ các
thông tin cho các
quá trình
Thông tin trạng thái
phải được lưu trữ khi
một interrupt xuất hiện, nhằm cho phép quá
trình có thể tiếp tục
chính xác về sau
Vitual Memory
13
Nội dung
Các hệ thống xử lý
Process
Lập lịch cho Process
Tài liệu tham khảo
Vitual Memory
14
Định thời cho quá trình
Định thời cho quá trình (Process Scheduling):
Các hàng đợi định thời
Hàng đợi công việc (Job Queue): tập hợp tất cả các
quá trình trong hệ thống
Hàng đợi sẵn sàng (Ready Queue): tập hợp tất cả
các quá trình đang nằm trong bộ nhớ, sẵn sàng và
đang chờ để thực thi
Hàng đợi thiết bị (Device queue): tập hợp các quá
trình đang đợi sử dụng một thiết bị nhập/xuất
Quá trình có thể di chuyển giữa các hang đợi khác
nhau
Vitual Memory
15
Vitual Memory
16
Tiêu chí cho định thời
Vitual Memory
17
Các giải thuật định thời
Giải thuật First-Come First-Served (FCFS)
Vitual Memory
18
Vitual Memory
19
Các giải thuật định thời (tt)
Giải thuật Shortest-Job-First (SJF)
Vitual Memory
20
Vitual Memory
21
Vitual Memory
22
Vitual Memory
23
Các giải thuật định thời (tt)
Giải thuật định thời luân phiên (RR-Round Robin)
Vitual Memory
24
Vitual Memory
25