Tổng hợp đáp án câu hỏi [chương VI]

Xem chủ đề cũ hơn Xem chủ đề mới hơn Go down

Tổng hợp đáp án câu hỏi [chương VI]

Bài gửi  LeNgocTung (I22A) on 12/4/2013, 14:28

Chương 6:

Trình bày 4 tình huống ra quyết định của trình điều phối.Phân biệt điều phối có tiếm quyền và điều phối
không tiếm quyền
Bốn tình huống ra quyết định của trình điều phối CPU:

* Các tình huống ra quyết định của
trình điều phối:

1. Khi tiến trình chuyển từ Running
sang Waiting (Chờ I/O. chờ tiến trình con)

2. Khi tiến trình chuyển từ Running
sang Ready (do ngắt xảy ra)

3. Khi tiến trình chuyển từ Waiting
sang Ready (khi kết thúc I/O)

4. Khi tiến trình kết thúc công việc.

Phân biệt điều phối có tiếm quyền(Preemptive
Scheduling) và điều phối không tiếm quyền (Non-Preemptive Scheduling)

+ Có tiếm quyền: Điều phối chỉ xảy ra ở
thời điểm 1 va 4, không xảy ra điều phối ở thời điểm 2 và 3. Tiến trình giữ CPU
cho đến khi kết thúc bình thường hoặc khi chuyển sang trạng thái Waiting (cách
làm trong Windows 3.1 và Macintosh OS). Dùng khi máy không có Timer. Trên HĐH
hiện đại đa số có tiếm quyền.

+ Không tiếng quyền: Xảy ra trong cả 4
tình huống. Có thể bắt được tiến đang chạy, không cho độc chiếm CPU

Phân biệt thuật giải MSQ với thuật giải MFSQ

*Multilevel Queue Scheduling - MQS
-Hàng chờ Ready được phân cấp thành
nhiều mức có độ ưu tiên khác nhau.
VD:Mức các tiến trình tương tác chạy ở
mặt trước 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.
-Mỗi hàng chờ có thuật giải để điều phối
riêng.
-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 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ức cao hơn,tiến trình mức dưới sẽ bị tiếm quyền do tiến trình
mới có độ ưu tiên cao hơn.
+Phân bổ theo tỉ lệ thời lượng.
* Multilevel Feedback Queue Scheduling
- MFQS
-Như MSQ nhưng cho phép điều tiết tiến
trình sang mức khác.
VD:Những tiến trình hướng CPU được đưa
xuống mức dưới
-MFQS đạc trưng bởi các thông số:
+Số mức.
+Thuật giải điều phối cho mỗi mức.
+Phương thức nâng cấp tiến trình.
+Phương thức hạ cấp tiến trình.
+Phương thức chọn hàng chờ cho tiến
trình mới.
Ví dụ: Trong ga Hòa Hưng có 5 ô cửa
bán vé, những người mua vé xếp hàng vào 5 cửa. Có 5 loại khách hàng với 5 loại
ưu tiên khác nhau. Chỉ có 1 cô nhân viên bán vé thôi.
+ cửa 1: cửa hệ thống: cho những người
trong ngành hoặc thân nhân của những người trong ngành đường sắt.
+ cửa 2: cho thương binh, Mẹ VNAH.
+ cửa 3: cho những người bình thường,
khách vảng lai.
+ cửa 4: khách có độ ưu tiên thấp hơn.
+ cửa 5: cho Sinh viên.
Với MQS: chỉ 1 cô bán vé chạy từ cửa
này sang cửa kia, cửa nào có khách thì chạy sang cửa đó.
Với MFQS: có điều phối nếu có sự ưu
tiên, đẩy bớt tiến trình từ cửa này sang cửa kia, giúp cho hoạt động được tốt
hơn.
ĐỘ ƯU TIÊN HẠ TỪ TRÊN XUỐNG, KHÔNG CÓ
SỰ ƯU TIÊN TỪ MỨC DƯỚI ĐI NGƯỢC LÊN MỨC TRÊN

Vì sao hệ điều hành phải có chức năng điều phối CPU. Năm tiêu chí điều phối CPU
1. Vì sao hệ điều hành phải có chức
năng điều phối CPU?
Trong các hệ đa chương thực thi nhiều
chương trình đồng thời làm tăng hiệu suất hệ thống.
chiến lược định thời CPU.Tại mỗi thời điểm,
chỉ có một process được thực thi. Do đó, cần phải giải quyết vấn đề phân chia,
lựa chọn process thực thi sao cho được hiệu quả nhất
2.Năm tiêu chí điều phối CPU là những
tiêu chí nào?
a. Công suất CPU (CPU Utilisation): Thực
tế đạt từ 40% - 90% thời gian CPU. CPU càng bận càng tốt.
b. Thông suất hệ thống (Throughput): Số
TT hoàn tất trong 1 đơn vị thời gian, ví dụ: 1 TT / giờ, 10 TT / giây.
c. Tổng thời gian làm việc (Turnaround
Time): Kể từ khi bắt đầu đến khi kết thúc tiến trình (Bao gồm tổng thời gian chờ
tại Ready Queue, tổng thời gian sử dụng CPU, tổng thời gian I/O, …).
d. Thời gian chờ (Waiting Time): Tổng
thời gian chờ tại Ready Queue.
e. Thời gian đáp ứng (Response Time):
Thời gian kể từ khi người dùng đặt yêu cầu cho đến khi có phản hồi đầu tiên.
Trình bày thuật giải điều phối RRS & FCFS
RRS
Như điều phối FCFS nhưng cho phép tiếm
quyền khi tiếng trình đang chạy bị hết thời lượng. Mỗi tiến trình được cấp một
thời lượng thưởng từ 10 đến 100 ms, sau khoảng thời gian này nó bị tiếm quyền
và bị đưa vào cuối hàng chờ Ready, tiến trình đầu tiên trong hàng chờ Ready được
chọn tiếp theo
Nếu có n tiến trình và thời lượng là
q, mỗi tiến trình nhận 1/n thời gian CPU bao gồm các đoạn không quá q đơn vị thời
gian
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 đến khi tiến trình mới mức độ ưu tiên cao hơn
Phân bổ theo tỉ lệ thời lượng. Ví dụ:
80% thời lượng CPU dành cho Foreground, 20% dành cho Background.
Trình bày 4 tình huống ra quyết định của trình
điều phối. Phân biệt điều phối có tiếm quyền và không tiếm quyền?

Các tình huống ra quyết định của trình điều phối:
1. Khi tiến trình Running sang
Waiting.
- Khi tiến trình cần thực hiện nhập xuất
thì trình điều phối sẽ tìm kiếm một tiến trình khác để câp CPU. Trong trường hợp
này tiến trình tự ngừng sử dụng CPU => điều phối không tiếm quyền.
2. Khi tiến trình chuyển từ Running
sang Ready.
- Khi thời gian thực hiện của tiến
trình vượt quá thời gian quy định (vì hệ điều hành chia thời gian) thì HĐH sẽ
ngừng cấp CPU và đưa tiến trình vào Ready để cấp CPU cho một tiến trình khác.
Trường hợp này có sự can thiệp của HĐH để lấy CPU => điều phối có tiếm quyền.
3. Khi tiến trình chuyền từ Waiting
sang Ready.
- Sau khi quá trình nhập xuất đã xong,
tiến trình lại được đưa vào hàng chờ. Lúc này HĐH sẽ kiểm tra xem có thể tiếp tục
đưa tiến trình chờ đó chạy tiếp hay không? Nếu có sẽ cấp CPU cho tiến trình này
tiếp tục làm việc. Trường hợp này có sự can thiệp của HĐH => điều phối có tiếm
quyền.
4. Khi tiến trình kết thúc công việc.
- Sau khi tiến trình hoàn tất công việc
thì tự trả CPU lại cho HĐH, HĐH sẽ tìm một tiến trình thích hợp khác để cấp
CPU. Trong trường hợp này tiến trình tự ngừng sử dụng CPU => điều phối không
tiếm quyền.
- Điều phối không tiếm quyền là khi tiến
trình giữ CPU cho đến khi kết thúc hoặc chuyển sang trạng thái waiting mà không
có sự can thiệp thu hồi CPU của HĐH.
- Điều phối có tiếm quyền là khi HĐH
can thiệp để thu hồi CPU để cấp cho một tiến trình khác hoạt động.
Phân biệt thuật giải MQS với thuật giải
MFQS
Điều phối hàng chờ nhiều mức
(Multilevel Queue Scheduling - MQS)
• Hng 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ụ: Foreground dù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.
Ảnh tự tìm nhé
Điều phối hàng chờ nhiều mức có điều
tiết ( Multilevel Feedback Queue Scheduling - MFQS )
Ảnh tự tìm nhé

• Như MQS nhưng cho phép Điều tiết tiến
trình sang mức khc, ví dụ: những tiến trình hướng CPU được đưa xuống mức dưới,
trong khi tiến trình hướng I/O hoặc chờ lâu được chuyển lên trên.
• MFQS đặc trưng bởi các thông số:
- Số mức ( số hàng chờ )
- Thuật giải điều phối cho mỗi mức
- Phương thức nâng cấp tiến trình
- Phương thức hạ cấp tiến trình
- Phương thức chọn hàng chờ ( chọn mức) cho tiến trình mới
Ví dụ về :
* MQS
Ưu tiên cho cao trước rồi mới tới thấp,
ví dụ trong sân bay, khi mua vào cổng qua an ninh, ưu tiên những người cỗng 1
trước, rồi mới tới những người
cổng 2, 3, 4 ...... Ai là cán bộ, công
viên chức thì ưu tiên vào trước, rồi mới
tới cổng dành cho sinh viên, học sinh.
*MFQS
Sân bay bán vé, có 3 cổng chẳng hạn, mức
độ 0 ưu tiên trước, bắt buộc hàng đầu tiên, nếu mua vé xong, đi ra ngoài luôn,
theo chiều mũi tên và những người chưa mua được còn lại đẩy xuống hàng kế tiếp
và nếu mua
được thì đi ra ngoài, và cứ như thế đẩy
những người còn lại xuống độ 2 và xong đi ra ngoài. Bạn nhìn mũi tên sẽ hiểu.
Còn ra thi, nếu thầy vẽ thêm mũi tên
đi lên: thì bạn sẽ giải thích là có sự nâng cấp. Sơ đồ trong sách gọi là hạ cấp.
Bạn không hiễu cứ comment nhé
Phân biệt điều phối có tiếm quyền
(Preemtive Scheduling) và không tiếm quyền (Non-Preemtive Scheduling).
Giống nhau:
Được dùng trong điều phối CPU (chọn tiến
trình trong Ready Queue để cấp thời gian CPU (chuyển sang trạng thái Running)).
Khác nhau:
- Preemptive Scheduling thì điều phối
CPU có tiếm quyền còn Non-Preemptive Scheduling thì điều phối CPU không tiếm
quyền.
- Non-Preemptive Scheduling: Có nghĩa
là khi tiến trình P1 có thời điểm đến trước P2 thì tiến trình P1 được thực hiện
hết khoảng thời gian thực hiện, sau đó mới thực hiện tiến trình P2.
- Preemptive Scheduling: Có nghĩa là
khi có 3 tiến trình P1, P2, P3 có thời điểm đến theo thứ tự đó thì tiến trình
P1 sẽ được thực hiện với một khoảng thời gian cho phép sau đó bị tiến trình P2
hay P3 tiếm quyền. Còn quá trình điều phối kế tiếp như thế nào là tuỳ thuộc vào
thuật toán điều phối và độ ưu tiên của tiến trình.
avatar
LeNgocTung (I22A)

Tổng số bài gửi : 35
Join date : 17/03/2013
Age : 28

Xem lý lịch thành viên

Về Đầu Trang Go down

Xem chủ đề cũ hơn Xem chủ đề mới hơn Về Đầu Trang


 
Permissions in this forum:
Bạn không có quyền trả lời bài viết