http://vietjack.com/ Trang chia sẻ các bài học online miễn phí Trang 33
Lập lịch trình vào đầu phục vụ trước (First Come First Serve – FCFS)
Lập lịch trình công việc ngắn nhất phục vụ trước (Shortest-Job-First SJF)
Lập lịch trình quyền ưu tiên
Lập lịch trình Round Robin (RR)
Lập lịch trình nhiều hàng mức độ (multilevel queue)
Lập lịch trình vào đầu phục vụ trước (FCFS)
Các công việc được chạy trên chế độ vào đầu phục vụ đầu
Dễ hiểu và thực hiện
Hiệu suất thấp khi thời gian chờ đợi trung bình là cao
Thời gian đợi của mỗi tiến trình như sau:
Tiến trình
Thời gian đợi: thời gian phục vụ - thời gian đến
http://vietjack.com/ Trang chia sẻ các bài học online miễn phí Trang 34
P1 5 - 1 = 4
P2 8 - 2 = 6
P3 16 - 3 = 13
Thời gian trung bình: (0+4+6+13) / 4 = 5.55
Lập lịch trình công việc ngắn nhất phục vụ trước (SJF)
Cách tiếp cận tốt nhất để giảm thiểu tối đa thời gian đợi
Không dễ dàng để thực hiện
Các bộ xử lý nên biết trước khoảng thời gian mà tiến trình sẽ tốn
Thời gian đợi của mỗi tiến trình như sau:
Tiến trình
http://vietjack.com/ Trang chia sẻ các bài học online miễn phí Trang 35
P0 3 - 0 = 3
P1 0 - 0 = 0
P2 16 - 2 = 14
P3 8 - 3 = 5
Thời gian chờ trung bình: (3+0+14+5) / 4 = 5.50 Lập lịch trình quyền ưu tiên
Mỗi tiến trình được chỉ định một quyền ưu tiên. Tiến trình có quyền ưu tiên cao nhất được thực hiện đầu tiên và tiếp tục với phương thức tương tự.
Các tiến trình với quyền ưu tiên như nhau được thực hiện theo thứ tự nhập đầu thì phục vụ đầu.
Quyền ưu tiên có thể được quyết định dựa trên các yêu cầu của bộ nhớ, thời gian hoặc bất kỳ yêu cầu nguồn tài nguyên khác.
http://vietjack.com/ Trang chia sẻ các bài học online miễn phí Trang 36
Tiến trình
Thời gian chờ: thời gian phục vụ - thời gian đến
P0 9 - 0 = 9
P1 6 - 1 = 5
P2 14 - 2 = 12
P3 0 - 0 = 0
Thời gian chờ trung bình: (9+5+12+0) / 4 = 6.5 Lập lịch trình Round Robin
Mỗi tiến trình được cung cấp một thời gian cố định để thực hiện được gọi là quantum (hạn ngạch thời gian)
Một khi một tiến trình được chạy trong một quãng thời gian đã cho trước. Tiến trình được ưu tiên và tiến trình khác được thực hiện trong quãng thời gian cho trước.
Việc chuyển đổi bối cảnh được sử dụng để lưu trạng thái của các tiến trình được ưu tiên.
http://vietjack.com/ Trang chia sẻ các bài học online miễn phí Trang 37
Tiến trình
Thời gian chờ: thời gian phục vụ - thời gian đến
P0 (0-0) + (12-3) = 9
P1 (3-1) = 2
P2 (6-2) + (14-9) + (20-17) = 12
P3 (9-3) + (17-12) = 11
Thời gian chờ trung bình: (9+2+12+11) / 4 = 8.5 Lập lịch trình đa hàng
Chế độ nhiều hàng được duy trì cho các tiến trình.
Mỗi hàng có thể có thuật toán lập lịch trình riêng của nó.
Các quyền ưu tiên được chỉ định tới mỗi hàng.