1.1 .Khái niệm quá trình
4. Các thuật toán lập lịch
4.6. Multi Level Feedback Queues (MLFQ)
Nguyên tắc : Ý tưởng chính của giải thuật là phân lớp các tiến trình tùy theo
độ ưu tiên của chúng để có cách thức điều phối thích hợp cho từng nhóm. Danh sách sẵn sàng được phân tách thành các danh sách riêng biệt theo cấp độ ưu tiên, mỗi danh sách bao gồm các tiến trình có cùng độ ưu tiên và được áp dụng một giải thuật điều phối thích hợp để điều phối. Ngồi ra, cịn có một giải thuật điều phối giữa các nhóm, thường giải thuật này là giải thuật không độc quyền và sử dụng độ ưu tiên cố định.Một tiến trình thuộc về danh sách ở cấp ưu tiêni sẽ chỉ được cấp phát CPU khi các danh sách ở cấp ưu tiên lớn hơni đã trống.
Hình 4.4 Điều phối nhiều cấp ưu tiên
Thơng thường, một tiến trình sẽ được gán vĩnh viễn với một danh sách ở cấp
ưu tiên i khi nó được đưa vào hệ thống. Các tiến trình khơng di chuyển giữa các danh sách. Cách tổ chức này sẽ làm giảm chi phí điều phối, nhưng lại thiếu linh động và có thể dẫn đến tình trạng ‘đói CPU’ cho các tiến trình thuộc về những
cấp ưu tiên và xoay vịng. Giải thuật này sẽ chuyển dần một tiến trình từ danh sách có độ ưu tiên cao xuống danh sách có độ ưu tiên thấp hơn sau mỗi lần sử dụng CPU. Cũng vậy, một tiến trình chờ quá lâu trong các danh sách có độ ưu tiên thấp cũng có thể được chuyển dần lên các danh sách có độ ưu tiên cao hơn. Khi xây dựng một giải thuật điều phối nhiều cấp ưu tiên và xoay vòng cần quyếtđịnh các tham số :
Số lượng các cấp ưu tiên
Giải thuật điều phối cho từng danh sách ứng với một cấp ưu tiên.
Phương pháp xác định thời điểm di chuyển một tiến trình lên danh sách có độ ưu tiên cao hơn.
Phương pháp xác định thời điểm di chuyển một tiến trình lên danh sách có độ ưu tiên thấp hơn.
Phương pháp sử dụng để xác định một tiến trình mới được đưa vào hệ thống sẽ thuộc danh sách ứng với độ tiên nào.
Hình 4.5Điều phối Multilevel Feedback