1
BÀI TẬP LỚN
Đề tài:
Lập lịch CPU
2
Nhóm thực hiện:
Nguyễn Thị Ngọc Huyên
Nguyễn Thị Huyền
Chu Thanh Hương
Phạm Văn Hưởng
Trần Đăng Khoa
3
Mục tiêu
Hiểu được
- Tại sao cần phải lập lịch cho CPU
- Các tiêu chí của lập lịch
- Một số giải thuật của lập lịch
4
Nội dung
I/ Các khái niệm cơ bản
II/ Các tiêu chuẩn lập lịch
III/ Các giải thuật lập lịch
IV/ Lập lịch multiprocessor
V/ Lập lịch thời gian thực
VI/ Lựa chọn giải thuật
VII/ Ngắt
5
I/ Các khái niệm cơ bản
1. Khái niệm giờ CPU
2. Chu kỳ sử dụng CPU-I/O
3. Bộ định thời CPU
4. Định thời biểu trưng dụng
6
1 Khái niệm giờ CPU
Giờ CPU là thời gian mà CPU phục vụ cho
tiến trình hoạt động.
Tại mỗi thời điểm nhất định, chỉ có một
tiến trình được phân phối giờ CPU hoạt
động
7
I/ Các khái niệm cơ bản
1. Khái niệm giờ CPU
2. Chu kỳ sử dụng CPU-I/O
3. Bộ định thời CPU
4. Định thời biểu trưng dụng
5. Bộ phân phát
8
2/ Chu kỳ sử dụng CPU-I/O
9
I/ Các khái niệm cơ bản
1. Khái niệm giờ CPU
2. Chu kỳ sử dụng CPU-I/O
3. Bộ định thời CPU
4. Định thời biểu trưng dụng
5. Bộ phân phát
10
3/ Bộ định thời CPU
-
Mỗi khị CPU rỗi, HĐH cần chọn trong số các
tiến trình đã sẵn sàng thực hiện trong bộ nhớ
(ready queue), và phân phối CPU cho một
trong số đó.
-
Tiến trình được thực hiện bởi trình lập ngắn
chu kỳ (short-temr scheduler, CPU scheduler)
11
I/ Các khái niệm cơ bản
1. Khái niệm giờ CPU
2. Chu kỳ sử dụng CPU-I/O
3. Bộ định thời CPU
4. Định thời biểu trưng dụng
12
4.Bộ định thời biểu trưng dụng
Các quyết định lập lịch CPU có thể xảy khi
một tiến trình:
Chuyển từ trạng thái chạy sang trạng thái chờ
Chuyển từ trạng thái chạy sang trạng thái sẵn
sàng
Chuyển từ trạng thái đợi sang trạng thái sẵn
sàng
Kết thúc
13
Lập lịch CPU khi 1 và 4 không được ưu tiên trước:
-
Không có sự lựa chọn: phải chọn một
tiến trình mới để thực hiện
-
Khi một tiến trình được phân phối CPU, nó sử dụng CPU
cho đến khi giải phóng CPU bằng cách kết thúc hoặc
chuyển sang trạng thái chờ
-
Các tiến trình sẵn sàng nhường điều khiển của CPU
4.Bộ định thời biểu trưng dụng
14
Lập lịch CPU khi 2 và 3 được ưu tiên trước:
- Khi 2: tiến trình đá bật CPU ra. Cần phải chọn tiến
trình kế tiếp.
- Khi 3: tiến trình có thể đá bật tiến trình khác ra
khỏi CPU.
4.Bộ định thời biểu trưng dụng
15
Nội dung
I/ Các khái niệm cơ bản
II/ Các tiêu chuẩn lập lịch
III/ Các giải thuật lập lịch
IV/ Lập lịch multiprocessor
V/ Lập lịch thời gian thực
VI/ Lựa chọn giải thuật
VII/ Ngắt
16
II.Các tiêu chuẩn lập lịch
CPU utilization (việc sử dụng CPU)
Throughput (thông lượng)
Turnaround time (thời gian hoàn thành)
Waiting time (thời gian chờ)
Responsen time (thời gian đáp ứng)
17
Nội dung
I/ Các khái niệm cơ bản
II/ Các tiêu chuẩn lập lịch
III/ Các giải thuật lập lịch
IV/ Lập lịch multiprocessor
V/ Lập lịch thời gian thực
VI/ Lựa chọn giải thuật
VII/ Ngắt
18
III.Các giải thuật lập lịch
1.Định thời đến trước được phục vụ trước
(firt-come,first-served)
2.Định thời biểu công việc ngắn nhất trước
(shortest-job-first).
3.Định thời theo độ ưu tiên.
4.Định thời luân phiên.
5.Định thời biểu với hàng đợi nhiều cấp.
6.Định hàng đợi phản hồi đa cấp.
19
1.Định thời đến trước phục vụ trước
Thuật toán:
•
Độ ưu tiên phục vụ tiến trình dựa vào thời điểm
hình thành tiến trình
•
Mọi tiến trình đều được phục vụ theo trình tự xuất
hiện cho đến khi kết thúc hoặc bị ngắt
Ưu điểm :
•
giờ cpu không bị phân phối lại
•
Chi phí tổ chức thực hiện thấp
Nhựơc điểm
•
thời gian trung bình sẽ tăng vô hạn khi hệ thống
tiếp cận tới hạn khả năng phục vụ của mình.
20
Nếu thời gian thực hiện tiến trình tăng thì thời
gian chờ đợi trung bình sẽ tăng theo
Khi có tiến trình dài, ít bị ngắt thì các tiến trình
khác phải chờ đợi lâu hơn
Vd: Cho dãy tiến trình với thời
gian phục vụ tương ứng:
proceses thực hiện
P1 24
P2 3
p3 3
1.Định thời đến trước phục vụ trước
21
Nếu các quá trình đến theo thứ tự P1,P2,P3 và
đc phục vụ theo thứ tự FCFS, chúng ta nhận
được kết quả:
Thời gian chờ của các tiến trình:
P
1
= 0; P
2
= 24; P
3
= 27
Thời gian chờ trung bình:
(0 + 24 + 27)/3 = 17
P
1
P
2
P
3
24 27 300
1.Định thời đến trước phục vụ trước
22
Nếu các tiến trình đến theo thứ tự:
P
2
, P
3
, P
1
.
Biểu đồ Gantt của lập lịch như sau:
Thời gian chờ đợi các tiến trinh:
P1=6;P2=0;P3=3
Thời gian chờ đợi TB: (6+0+3)/3=3
P
1
P
3
P
2
63 300
1.Định thời đến trước phục vụ trước
23
III.Các giải thuật lập lịch
1.Định thời đến trước được phục vụ trước (firt-
come,first-served)
2.Định thời biểu công việc ngắn nhất trước
(shortest-job-first)
3.Định thời theo độ ưu tiên
4.Định thời luân phiên
5.Định thời biểu với hàng đợi nhiều cấp
6.Định hàng đợi phản hồi đa cấp
24
2.Định thời biểu công việc ngắn trước phục
vụ trước
Thuật toán:
•
Thứ tự ưu tiên thực hiện tiến trình dựa vào tổng thời
gian thực hiện tiến trình
Ưu điểm
•
Thời gian chờ đợi trung bình của các thuật toán ngắn
hơn so với FCFS
•
Nhanh chóng loại bỏ các tiến trình ngắn
•
Giảm số lượng tiến trình trong hàng đợi
Nhược điểm:Chế độ phân phối lại giờ CPU được áp
dụng trong trường hợp ngắt các tiến trình có thể không
hợp lý
25
- Gắn với mỗi tiến trình là thời gian sử dụng
CPU tiếp sau của nó.
Thời gian này được sử dụng để lập lịch các
tiến trình với thời gain ngắn nhất.
Có hai phương pháp:
-
Không ưu tiên trước.
-
Có ưu tiên trước.
2.Định thời biểu công việc ngắn trước phục
vụ trước