Các thuật giải điều phối
Trang 1 trong tổng số 1 trang
Các thuật giải điều phối
* Đến trước- phục vụ trước (FCFS)
-Đơn giản ,dễ thực hiện
- Các tiến trình trong ready queue dc cấp CPU từ đầu dãy đến cuối dãy theo quy tắc FIFO
- Thời gian chờ trung bình quá lớn
• Ngắn hơn chạy trước (SJFS)
o Tiến trình có khoảng CPU kế tiếp nhỏ hơn thì dc chạy trước .Trong trường hợp bằng nhau dùng FCFS
o Giải thuật khá tối ưu , nhưng phải biết cách ước đoán khoảng CPU kế tiếp
o SJFS không tiếm quyền : tiến trình hiện thời dc thực hiện đến hết khoảng CPU của nó
o SJFS có tiếm quyền : tiến trình mới có CPU kế tiếp nhỏ hơn khoảng CPU còn lại của tiến trình đang vận hành sẽ dc chọn thay thế
• Điều phối theo độ ưu tiến
o Mỗi tiến trình dc cấp 1 số nguyên dùng để ấn định dộ ưu tiên
o Cpu luôn dành cho tiến trình có độ ưu tiên cao hơn với 2 phương án : tiếm quyền và không tiếm quyền
o SJFS là trường hợp đặc biệt của PS với độ ưu tiên P=( khoảng CPU kế tiếp)
o Vấn đề ách vô hạn định : tiến trình với độ ưu tiên thấp có thể bị bỏ đói và không bao h dc thực hiện
o Giải pháp tăng tuổi – tăng độ ưu tiên theo thời gian chờ đợi
• Điều phối theo vòng Robin
o Như 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
o Mỗi tiến trình dc cấp 1 thời lượng CPU thường từ 10 – 100 mili giây
Sau khoảng thời gian này , nó bị tiếm quyền và dc đưa vào cuối hàng chờ Ready .Tiến trình trong hàng chở Ready đầu tien dc chọn kế tiếp
• Giải thuật này dc gọi là giải thuật chia sẽ CPU
Điều phối MQS
- Hàng chờ Ready được phân cấp thành nhiều mức có độ ưu tiên khác nhau, ví dụ: Mức các tiến trình tương tác (Interactive) chạy ở mặt trước ( Foreground ) có độ ưu tiên cao nhất và Mức các tiến trình lô ( Batch ) vận hành trong hậu trường (Background ) .
- Mỗi hàng chờ có thuật giải điều phối riêng, ví dụ: Foregrounddùng RRS, Background dùng FCFS.
- Quan hệ giữa các mức:
Ưu tiên cố định: Xong hết các tiến trình mức trên rồi mới chuyển xuống mức dưới. Đang chạy tiến trình mức dưới mà xuất hiện tiến trình mới mức cao hơn, tiến trình mức dưới sẽ bị tiếm quyền cho tiến trình mới có độ ưu tiên cao hơn ( Hệ Solaris 2 dùng cách này ) .
Phân bổ theo tỉ lệ thời lượng: ví dụ: 80% thời lượng CPU dành cho Foreground, 20 % cho Background.
Điều phối PS
- Mỗi tiến trình được cấp một số nguyên (Priority Number) dùng để ấn định Độ ưu tiên.
- CPU luôn dành cho tiến trình với độ ưu tiên cao hơn (Priority Number nhỏ hơn ºĐộ ưu tiên cao hơn ) với 2 phương án:
Có tiếm quyền ( Preemptive )
Không tiếm quyền ( Non-Preemptive )
- SJFS là trường hợp đặc biệt của PS với độ ưu tiên:
P= ( Khoảng CPU kế tiếp )
-Đơn giản ,dễ thực hiện
- Các tiến trình trong ready queue dc cấp CPU từ đầu dãy đến cuối dãy theo quy tắc FIFO
- Thời gian chờ trung bình quá lớn
• Ngắn hơn chạy trước (SJFS)
o Tiến trình có khoảng CPU kế tiếp nhỏ hơn thì dc chạy trước .Trong trường hợp bằng nhau dùng FCFS
o Giải thuật khá tối ưu , nhưng phải biết cách ước đoán khoảng CPU kế tiếp
o SJFS không tiếm quyền : tiến trình hiện thời dc thực hiện đến hết khoảng CPU của nó
o SJFS có tiếm quyền : tiến trình mới có CPU kế tiếp nhỏ hơn khoảng CPU còn lại của tiến trình đang vận hành sẽ dc chọn thay thế
• Điều phối theo độ ưu tiến
o Mỗi tiến trình dc cấp 1 số nguyên dùng để ấn định dộ ưu tiên
o Cpu luôn dành cho tiến trình có độ ưu tiên cao hơn với 2 phương án : tiếm quyền và không tiếm quyền
o SJFS là trường hợp đặc biệt của PS với độ ưu tiên P=( khoảng CPU kế tiếp)
o Vấn đề ách vô hạn định : tiến trình với độ ưu tiên thấp có thể bị bỏ đói và không bao h dc thực hiện
o Giải pháp tăng tuổi – tăng độ ưu tiên theo thời gian chờ đợi
• Điều phối theo vòng Robin
o Như 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
o Mỗi tiến trình dc cấp 1 thời lượng CPU thường từ 10 – 100 mili giây
Sau khoảng thời gian này , nó bị tiếm quyền và dc đưa vào cuối hàng chờ Ready .Tiến trình trong hàng chở Ready đầu tien dc chọn kế tiếp
• Giải thuật này dc gọi là giải thuật chia sẽ CPU
Điều phối MQS
- Hàng chờ Ready được phân cấp thành nhiều mức có độ ưu tiên khác nhau, ví dụ: Mức các tiến trình tương tác (Interactive) chạy ở mặt trước ( Foreground ) có độ ưu tiên cao nhất và Mức các tiến trình lô ( Batch ) vận hành trong hậu trường (Background ) .
- Mỗi hàng chờ có thuật giải điều phối riêng, ví dụ: Foregrounddùng RRS, Background dùng FCFS.
- Quan hệ giữa các mức:
Ưu tiên cố định: Xong hết các tiến trình mức trên rồi mới chuyển xuống mức dưới. Đang chạy tiến trình mức dưới mà xuất hiện tiến trình mới mức cao hơn, tiến trình mức dưới sẽ bị tiếm quyền cho tiến trình mới có độ ưu tiên cao hơn ( Hệ Solaris 2 dùng cách này ) .
Phân bổ theo tỉ lệ thời lượng: ví dụ: 80% thời lượng CPU dành cho Foreground, 20 % cho Background.
Điều phối PS
- Mỗi tiến trình được cấp một số nguyên (Priority Number) dùng để ấn định Độ ưu tiên.
- CPU luôn dành cho tiến trình với độ ưu tiên cao hơn (Priority Number nhỏ hơn ºĐộ ưu tiên cao hơn ) với 2 phương án:
Có tiếm quyền ( Preemptive )
Không tiếm quyền ( Non-Preemptive )
- SJFS là trường hợp đặc biệt của PS với độ ưu tiên:
P= ( Khoảng CPU kế tiếp )
BuiThiThuy (113A)- Tổng số bài gửi : 12
Join date : 24/07/2012
Similar topics
» Thảo luận Bài 6
» Thảo luận Bài 6: RRS
» Cách giải bài tập về các thuật giải điều phối CPU (Thuật giải RRS )
» Thảo luận Bài 6
» Thảo luận Bài 6
» Thảo luận Bài 6: RRS
» Cách giải bài tập về các thuật giải điều phối CPU (Thuật giải RRS )
» Thảo luận Bài 6
» Thảo luận Bài 6
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