Tìm hiểu thuật giải: RRS (Round - Robin Scheduling)
Trang 1 trong tổng số 1 trang
Tìm hiểu thuật giải: RRS (Round - Robin Scheduling)
1/Hiểu rõ hơn về thuật toán: RRS(Round – Robin Scheduling)
- Mỗi tiến trình sử dụng một lượng nhỏ thời gian cảu CPU(Time quantium –thời gian định lượng q, thường từ 10-100ms. Sau đó được đưa vào cuối ready queue.
- Ready queue được thực hiện theo FIFO(First-In, First-Out)(FIFS)
- Nếu tiến trình có thời gian sử dụng CPU >q, thì bộ định thời gian (timer) sẽ tự nguyện nhường CPU khi kết thúc.Trình lập lịch sẽ chọn tiến trình kế tiếp trong ready queue
- Nếu tiến trình có thời gian sử dụng CPU >q, thì bộ định thời gian (timer) sẽ tự động đếm lùi và ngắt HĐH khi nó = 0;Việc chuyển ngữ cảnh được thực hiện và tiến trình hiện tại được đưa xuống cuối ready queue để nhường CPU cho tiến trình kế tiếp.
Như điều phối kiểu FCFS nhưng cho phép tiếm quyền khi tiến trình đang chạy bị hết thời lượng.
Mỗi tiến trình được cấp 1 thời lượng CPU (Time Quantum), thường từ 10-100 mili giây. Sau khoảng thời gian này, nó bị tiếm quyền và được đưa vào cuối hàng chờ Ready. Tiến trình đầu tiên trong hàng chờ Ready được chọn kế tiếp.
Giả sử ta có hàng chờ Ready có các tiến trình sau:
P1 có khoảng CPU là 25 , P2 là 18 và p3 là 29.
Tiến hàng RRS với thời lượng 20 giây và các tiến trình có thời điểm đến là như nhau thì:
- Trước tiên thì thực hiện tiến trình P1 với thời lượng 20 giây. Sau đó nó bị tiếm quyền và thực hiện cho P2 là 18 giây ( vì P2 chỉ có 18 giây mà thôi) kế tiếp là nó điều phối thực hiện cho P3 cũng với thời lượng là 20 giây. Sau đó nó bị tiếm quyền và thực hiện tiếp P1 vời thời lượng là 5 giây(vì P1 đã thực hiện 20 giây rồi chỉ còn 5 giây mà thôi). Kế tiếp là thực hiện P3 với 9 giây còn lại.
- Thời gian chờ trung bình được tính như sau:( Thời gian thực hiện P1+ Thời gian thực hiện P2+Thời gian thực hiện P3) tất cả chia cho 3 vì có 3 tiến trình.
==> ((0+58-20) + (20-0)+(38-0+63-58))/3
<=>(38+20+43)/3=33.667
Admin
Thời gian chờ trung bình = (Thời gian chờ của P1+ Thời gian chờ của P2+Thời gian chờ của P3) / 3
- Mỗi tiến trình sử dụng một lượng nhỏ thời gian cảu CPU(Time quantium –thời gian định lượng q, thường từ 10-100ms. Sau đó được đưa vào cuối ready queue.
- Ready queue được thực hiện theo FIFO(First-In, First-Out)(FIFS)
- Nếu tiến trình có thời gian sử dụng CPU >q, thì bộ định thời gian (timer) sẽ tự nguyện nhường CPU khi kết thúc.Trình lập lịch sẽ chọn tiến trình kế tiếp trong ready queue
- Nếu tiến trình có thời gian sử dụng CPU >q, thì bộ định thời gian (timer) sẽ tự động đếm lùi và ngắt HĐH khi nó = 0;Việc chuyển ngữ cảnh được thực hiện và tiến trình hiện tại được đưa xuống cuối ready queue để nhường CPU cho tiến trình kế tiếp.
Như điều phối kiểu FCFS nhưng cho phép tiếm quyền khi tiến trình đang chạy bị hết thời lượng.
Mỗi tiến trình được cấp 1 thời lượng CPU (Time Quantum), thường từ 10-100 mili giây. Sau khoảng thời gian này, nó bị tiếm quyền và được đưa vào cuối hàng chờ Ready. Tiến trình đầu tiên trong hàng chờ Ready được chọn kế tiếp.
Giả sử ta có hàng chờ Ready có các tiến trình sau:
P1 có khoảng CPU là 25 , P2 là 18 và p3 là 29.
Tiến hàng RRS với thời lượng 20 giây và các tiến trình có thời điểm đến là như nhau thì:
- Trước tiên thì thực hiện tiến trình P1 với thời lượng 20 giây. Sau đó nó bị tiếm quyền và thực hiện cho P2 là 18 giây ( vì P2 chỉ có 18 giây mà thôi) kế tiếp là nó điều phối thực hiện cho P3 cũng với thời lượng là 20 giây. Sau đó nó bị tiếm quyền và thực hiện tiếp P1 vời thời lượng là 5 giây(vì P1 đã thực hiện 20 giây rồi chỉ còn 5 giây mà thôi). Kế tiếp là thực hiện P3 với 9 giây còn lại.
- Thời gian chờ trung bình được tính như sau:( Thời gian thực hiện P1+ Thời gian thực hiện P2+Thời gian thực hiện P3) tất cả chia cho 3 vì có 3 tiến trình.
==> ((0+58-20) + (20-0)+(38-0+63-58))/3
<=>(38+20+43)/3=33.667
Admin
Thời gian chờ trung bình = (Thời gian chờ của P1+ Thời gian chờ của P2+Thời gian chờ của P3) / 3
Similar topics
» Thảo luận Bài 6
» Tìm hiểu thuật giải: RRS (Round - Robin Scheduling)
» bài 2:Dùng thuật giải Round-Robin mình không hiểu lắm bài giai thuat Round-Robin nên mình làm thế không biết đúng hay sai bạn nào hiêu rõ xin giúp minh nói rõ hơn cho minh hiểu
» Ôn tập để Kiểm tra giữa kỳ và Thi lý thuyết
» Thảo luận Bài 6: RRS
» Tìm hiểu thuật giải: RRS (Round - Robin Scheduling)
» bài 2:Dùng thuật giải Round-Robin mình không hiểu lắm bài giai thuat Round-Robin nên mình làm thế không biết đúng hay sai bạn nào hiêu rõ xin giúp minh nói rõ hơn cho minh hiểu
» Ôn tập để Kiểm tra giữa kỳ và Thi lý thuyết
» Thảo luận Bài 6: RRS
Trang 1 trong tổng số 1 trang
Permissions in this forum:
Bạn không có quyền trả lời bài viết