hedieuhanh

21
Hệ điều hành Nhóm 8: Lương Công Nam Triệu Thị Kim Khoa Lê Bá Tuấn Anh Nguyễn Thị Thanh Thảo

Upload: tae-yang-won

Post on 02-Jul-2015

1.099 views

Category:

Education


1 download

TRANSCRIPT

Page 1: Hedieuhanh

Hệ điều hành

Nhóm 8:

Lương Công Nam

Triệu Thị Kim Khoa

Lê Bá Tuấn Anh

Nguyễn Thị Thanh Thảo

Page 2: Hedieuhanh

Bài 8, trang 54

Giả sử một hệ điều hành áp dụng giải thuật điều phối Multilevel feedback với 5 mức ưu tiên(giảm dần). Thời lượng quantum dành cho hàng đợi cấp 1 là 0.5s. Mỗi hàng đợi cấp thấp hơn sẽ có thời lượng quantum dài gấp đôi hàng đợi ứng với mức ưu tiên cao hơn nó. Một tiến trình khi vào hệ thống sẽ được đưa vào hàng đợi mức cao nhất và chuyển dần xuống hàng đợi bên dưới sau mỗi lượt sử dụng CPU. Một tiến trình chỉ có thể thu hồi CPU khi đã sử dụng hết thời gian quantum dành cho nó. Hệ thống có thể thực hiện các tác vụ theo lô hoặc theo tương tác, và mỗi tác vụ lại có thể theo hướng xử lí hay hướng nhập xuất.

a) Giải thích tại sao hệ thống này hoạt động không có hiệu quả?

b) Cần phải thay đổi (tối thiểu) như thế nào để hệ thống điều phối các tác vụ với những bản chất khác biệt như thế tốt hơn?

Page 3: Hedieuhanh

Chiến lược điều phối với nhiều mức ưu tiên

ĐộƯu

Tiên

Gi mả

Page 4: Hedieuhanh

Chiến lược điều phối với nhiều mức ưu tiên

Nguyên tắc:- 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 là những 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.

- Ngoài ra còn có giải thuật điều phối giữa các nhóm (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ên thứ i sẽ chỉ được cấp phát CPU khi các danh sách ở cấp độ ưu tiên lơn hơn i đã trống.

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 trình

trạng “đói CPU”

Page 5: Hedieuhanh

Điều phối Multilevel Feedback Cải tiến, khắc phục nhược điểm không mềm dẽo của giải thuật điều

phối với nhiều mức độ ưu tiên

- Multilevel feedback cho phép một tiến trình di chuyển giữa các hàng đợi.

- Nếu một tiến trình dùng quá nhiều CPU thì nó sẽ được di chuyển tới hàng đợi có độ ưu tiên thấp hơn.

- Tương tự, một tiến trình chờ quá lâu trong hàng đợi có độ ưu tiên thấp hơn có thể di chuyển tới hàng đợi có độ ưu tiên cao hơn.

Page 6: Hedieuhanh

Nói chung, một bộ định thời hàng đợi phản hồi nhiều cấp được định nghĩa bởi các tham số sau:

- Số lượng các cấp ưu tiên- Giải thuật điều phối có 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 độ ưu tiên nào.

Điều phối Multilevel Feedback

Page 7: Hedieuhanh

Có 5 mức độ ưu tiên:

Cấp 0

Cấp 1

Cấp 2

Cấp 3

Cấp 4

Q 2 =1

Q 1=0.5

Q 3 =2

Q 4=4

Q 5 =8

CPU

CPU

CPU

CPU

CPU

Page 8: Hedieuhanh

Có 5 mức độ ưu tiên: 0, 1, 2, 3, 4.

Mức 0: q= 0.5 Mức 1: q= 1 Mức 4: q= 8

Mức 2: q= 2 Mức 3: q= 4

Một tiến trình khi vào hệ thống sẽ đưa vào hàng đợi mức cao nhất và sau mỗi lần sử dụng CPU thì đưa xuống dần hàng đợi bên dưới

Một tiến trình bị thu hồi CPU khi hết thời gian quantum dành cho nó

Hệ thống có thể thực hiện theo lô hoặc tương tác, mỗi tác vụ lại có thể hướng xử lí hay nhập xuất.

a) Tại sao hệ thống này hoạt động không hiệu quả?

b) Cần phải thay đổi(tổi thiểu) như thế nào để hệ thống điều phối các tác vụ tốt hơn?

Tóm tắt bài toán

Page 9: Hedieuhanh

Câu a: Tại sao hệ thống này hoạt động không hiệu quả

Giải thuật điều phối multilevel feedback (GT/54)

Page 10: Hedieuhanh

Phân tích bài toán

Giải thuật có độ ưu tiên cao nhất cho các tiến trình có chu kỳ CPU 0.5 ms hay ít hơn và tiếp theo là 1.5 3.5 7.5 15.5 ms

Xử lý theo lô có thể trì hoãn thời gian đáp ứng

Xử lý tương tác đòi hỏi phải đáp ứng tức thời

Page 11: Hedieuhanh

Phân tích bài toán

Hướng xử lý : dùng ít lần, nhưng mỗi lần dùng thời gian đủ dài

Hướng xuât/ nhập: nhiều lượt sử dụng cpu, mỗi lượt trong thời gian khá ngắn

Đánh giá dựa trên 1. Turn around time 2. Waiting time

Page 12: Hedieuhanh

Câu a: Tại sao hệ thống này hoạt động không hiệu quả

Xử lý theo lô

Xử lý tương tác

Hướng xử lý

Hướng xuất nhập

Hướng xử lý

Hướng xuất nhập

Giải thuật điều phối multilevel feedback (GT/54)

Có thể trì hoãn thời gian

Đáp ứng tức thời

Được xử lý liền, nhưng không cần thiết, làm việc dư

Nhiều lần chuyển đổi ngữ cảnh, thời gian chờ cao, thời gian lưu lại hệ

thống cao, tạm chấp nhận được

Tốt , chấp nhận được

Nhiều lần chuyển đổi ngữ cảnh, thời gian

chờ cao, thời gian lưu lại hệ thống cao,

không thể chấp nhận được

Page 13: Hedieuhanh

Câu b: Cần thay đổi ( tối thiểu ) như thế nào để hệ thống điều phối các tác vụ trên tốt hơn

1) Điều chỉnh lại thời gian quantum của từng hàng đơi cho thích hợp

2) Khi tiến trình mới phát sinh thì phải được đưa vào hàng đợi có độ ưu tiên thích hợp.

Ví dụ : tiến trình xử lý theo lô thì cho vào hàng đợi 3,4. Còn tiến trình xử lý tương tác thì phải được đưa vào hàng đợi 0, 1, 3 ( việc phân loại tính chất của tiến trình là do “ bộ điều phối tác vụ”.

Page 14: Hedieuhanh

Tài liệu tham khảo

• Slide bài giảng HĐH cô Trần Hạnh Nhi + Giáo trình (Đại học khoa học tự nhiên TPHCM)

• Slide bài giảng HĐH thầy Trần Sơn Hải – ĐH Sư Phạm TPHCM

• http://en.wikipedia.org/wiki/Multilevel_feedback_queue

Page 15: Hedieuhanh

Thảo luận

Page 16: Hedieuhanh

Xử lý tương tác• Là xử lý thực hiện từng phần, phần xử lý bởi con người và bởi

máy tính được thực hiện xen kẽ nhau. Con người dẫn dắt các tiến trình xử lý, có thể ngắt và tham gia vào các tiến trình xử lý. Trong tiến trình xử lý tương tác, máy tính đóng vai trò trợ giúp tích cực.

• Phương thức được lựa chọn cho các hệ thống phải xử lý nhiều thông tin có mối quan hệ phức tạp với nhau, khó mô tả bằng các công thức, các phương trình toán học. Con người phải thường xuyên vận dụng những kinh nghiệm công tác của mình vào trong tiến trình xử lý.

• Sự hồi đáp đòi hỏi phải tức thời

Page 17: Hedieuhanh

Xử lý theo lô• Là tiến trình tập hợp những thông tin sẵn có hoặc tạo ra thông

tin mới theo định kỳ. Các công việc xử lý theo lô có thể tự động chạy mà không cần sự can thiệp ở ngoài vào ( con người). Ví dụ về xử lý theo lô là lập báo cáo định kỳ hàng tuần, hang tháng.Phương thức xử lý theo lô thích hợp với những tiến trình xử lý thông tin mà trong đó:- Việc truy cập thông tin diễn ra định kỳ.- Khuôn dạng và kiểu dữ liệu hoàn toàn xác định.- Thông tin khá ổn định trong khoảng thời gian giữa hai tiến trình xử lý liên tiếp.

• Sự hồi đáp có thể trì hoãn trong một thời gian chấp nhận được

Page 18: Hedieuhanh

Tính hướng xuất nhập của tiến trình

• Khi 1 tiến trình nhận được CPU, chủ yếu nó chỉ sử dụng CPU đến khi phát sinh một yêu cầu xuất nhập

• Hoạt động của tiến trình như thế thường bao gồm nhiều lượt sử dụng cpu, mỗi lượt trong thời gian khá ngắn

Page 19: Hedieuhanh

Tính hướng xử lý của tiến trình

• Khi một tiến trình được nhận cpu , nó có khuynh hướng sử dụng cpu đến khi hết thời gian danh cho nó.

• Hoạt động của các tiến trình như thế thường bao gồm một số ít lượt sử dụng cpu, nhưng mỗi lượt trong thời gian đủ dài

Page 20: Hedieuhanh

Ví dụ: Thuật toán điều phối với 3 hàng đợi ứng với 3 cấp độ ưu tiên, mỗi hàng áp dụng RR với 1 thời gian q.

Cấp 0

Cấp 1

Cấp 2

Q 2 =1

Q 1=0.5

Q 3 =2

CPU

CPU

CPU

Page 21: Hedieuhanh

Ví dụ: Thuật toán điều phối với 3 hàng đợi ứng với 3 cấp độ ưu tiên, mỗi hàng áp dụng RR với 1 thời gian q.

Áp dụng thuật toán RR cho cấp 0

Cấp 0 C B A

Q 1=0.5CPU

Thời điểm IO 121

Tiến trình ABC

Tồng thời gian 634

Thời gian I/O 422

Sau khi tất cả tiến trình ở cấp 0 kết thúc thì tiến trình ở cấp 1 mới bắt đầu.Tương tự, áp dụng RR cho cấp 1 và cấp 2