Xem mẫu

  1. TRƯỜNG ĐẠI HỌC SÀI GÒN CHƯƠNG 2: CPU SHEDULING GV: LƯƠNG MINH HUẤN
  2. NỘI DUNG I. Các khái niệm cơ bản II. Tiêu chuẩn điều phối III. Các thuật toán điều phối CPU IV.Điều phối đa xử lý
  3. I. CÁC KHÁI NIỆM CƠ BẢN ➢Hệ thống có một processor => Chỉ có một tiến trình được thực hiện tại một thời điểm. ➢Tiến trình được thực hiện (chiếm dụng VXL) cho tới khi phải chờ đợi một thao tác vào ra. ▪ Hệ đơn chương: CPU không được sử dụng => lãng phí. ▪ Hệ đa chương: cố gắng sử dụng CPU (đang rảnh rỗi ) cho các tiến trình khác (đang chờ đợi). • Cần nhiều tiến trình sẵn sàng trong bộ nhớ tại một thời điểm. • Khi một tiến trình phải chờ, hệ điều hành lấy lại processor để phân cho tiến trình khác.
  4. I. CÁC KHÁI NIỆM CƠ BẢN ➢Điều phối processor quan trọng với hệ điều hành đa nhiệm. ▪ Luân chuyển CPU giữa các tiến trình => khai thác hệ thống hiệu quả hơn. ➢Điều phối processor là nền tảng trong thiết kế hệ điều hành.
  5. I. CÁC KHÁI NIỆM CƠ BẢN ➢Chu kỳ CPU-I/O ▪ CPU burst ▪ I/O burst ➢CPU-bound : process có thời gian sử dụng CPU nhiều hơn thời gian sử dụng I/O ➢I/O-bound : process dùng phần lớn thời gian để đợi I/O
  6. BỘ ĐIỀU PHỐI CPU ➢Lựa chọn một trong số các tiến trình đang sẵn sàng trong bộ nhớ và cung cấp CPU cho nó. ➢Quyết định điều phối CPU xảy ra khi tiến trình: ▪ Chuyển từ trạng thái thực hiện sang trạng thái chờ đợi (yêu cầu vào/ra). (Điều phối không trưng dụng - non-preemptive) ▪ Chuyển từ trạng thái thực hiện sang trạng thái sẵn sàng (hết thời gian sử dụng CPU => ngắt thời gian). (Điều phối trưng dụng – preemptive) ▪ Chuyển từ trạng thái chờ đợi sang trạng thái sẵn sàng (hoàn thành vào/ra). (Điều phối trưng dụng – preemptive) ▪ Tiến trình kết thúc. (Điều phối không trưng dụng - non-preemptive)
  7. BỘ ĐIỀU PHỐI CPU ➢Điều phối không trưng dụng ▪ Tiến trình chiếm CPU cho tới khi giải phóng bởi: • Kết thúc nhiệm vụ • Chuyển sang trạng thái chờ đợi ▪ Không đòi hỏi phần cứng đặc biệt (đồng hồ ) ▪ Ví dụ: DOS, Win 3.1, Macintosh
  8. BỘ ĐIỀU PHỐI CPU ➢Điều phối trưng dụng ▪ Tiến trình chỉ được phép thực hiện trong khoảng thời gian ▪ Kết thúc khoảng thời gian được định nghĩa trước, ngắt thời gian xuất hiện, bộ điều vận (dispatcher ) được kích hoạt để quyết định hồi phục lại tiến trình hay lựa chọn tiến trình khác ▪ Bảo vệ CPU khỏi các tiến trình “đói-CPU" ▪ Vấn đề dữ liệu dùng chung: • Tiến trình 1 đang cập nhật DL thì bị mất CPU • Tiến trình 2, được giao CPU và đọc DL đang cập nhật ▪ Ví dụ: Hệ điều hành đa nhiệm WinNT, UNIX
  9. PHÂN LOẠI CÁC HOẠT ĐỘNG ĐIỀU PHỐI
  10. PHÂN LOẠI CÁC HOẠT ĐỘNG ĐIỀU PHỐI ➢Điều phối dài hạn(long-term scheduling): xác định process mới (new) nào được tiếp tục vào “sâu hơn” trong hệ thống. ▪ Thường chỉ có trong batch system ➢Điều phối trung hạn(medium-term scheduling): xác định process nào được đưa vào (swap in), đưa ra khỏi (swap out) bộ nhớ chính. ▪ Swap in/out có thể tốn đến vài giây thời gian =>chu kỳ ĐIỀU PHỐI trung hạn có thể là vài phút. ➢Điều phối ngắn hạn(short-term scheduling): xác định process nào được thực thi tiếp theo.
  11. ĐIỀU PHỐI DÀI HẠN ➢Ảnh hưởng đến độ đa lập trình (degree of multiprogramming: số quá trình đang ở trong bộ nhớ) ➢Nếu càng nhiều process đang ở trong bộ nhớ thì khả năng mọi process bị block có xu hướng giảm ▪ Sử dụng CPU hiệu quả hơn ▪ Nhưng mỗi process được phân chia khoảng thời gian sử dụng CPU nhỏ hơn ➢Thường có xu hướng đưa vào một tập lẫn lộn các CPU-bound process và I/O-bound process
  12. ĐIỀU PHỐI TRUNG HẠN ➢Quyết định việc đưa process (không phải process ở trạng thái new) vào bộ nhớ chính, hay ra khỏi bộ nhớ chính ➢Phụ thuộc vào yêu cầu quản lý việc đa lập trình (multiprogramming) ▪ Cho phép bộ điều phối dài hạn chấp nhận (admit) nhiều process hơn số lượng process mà có tổng kích thước được chứa vừa trong bộ nhớ chính (kỹ thuật bộ nhớ ảo) ▪ Nhưng nếu có quá nhiều process thì sẽ làm tăng việc truy xuất đĩa, do đó cần phải lựa chọn độ đa lập trình cho phù hợp ➢Được thực hiện bởi phần mềm quản lý bộ nhớ
  13. ĐIỀU PHỐI NGẮN HẠN ➢Xác định process nào được thực thi tiếp theo, còn gọi là điều phối CPU ➢Tùy hệ thống (điều phối nonpreemptive, preemptive) mà được kích hoạt khi có một sự kiện dẫn đến khả năng chọn một process để thực thi ▪ Ngắt thời gian (clock interrupt) ▪ Ngắt ngoại vi (I/O interrupt) ▪ Lời gọi hệ thống (operating system call) ▪ Signa
  14. II. TIÊU CHUẨN ĐIỀU PHỐI ➢Sử dụng CPU (Lớn nhất) ▪ Mục đích là làm CPU hoạt động nhiều nhất có thể ▪ Sử dụng CPU thay đổi từ 40% (hệ thống tải nhẹ) đến 90% (hệ thống tải nặng). ➢Thông lượng (throughput) (Lớn nhất) ▪ Số lượng tiến trình hoàn thành trong một đơn vị thời gian • Các tiến trình dài: 1 tiến trình/giờ • Các tiến trình ngắn: 10 tiến trình/giây
  15. II. TIÊU CHUẨN ĐIỀU PHỐI ➢Thời gian hoàn thành (Nhỏ nhất) ▪ Khoảng thời gian từ thời điểm gửi đến hệ thống tới khi quá trình hoàn thành • Thời gian chờ đợi để đưa tiến trình vào bộ nhớ • Thời gian chờ đợi trong hàng đợi sẵn sàng • Thời gian chờ đợi trong hàng đợi thiết bị • Thời gian thực hiện thực tế
  16. II. TIÊU CHUẨN ĐIỀU PHỐI ➢Thời gian chờ đợi (Nhỏ nhất) ▪ Tổng thời gian chờ trong hàng đợi sẵn sàng (Giải thuật điều phối CPU không ảnh hưởng tới các tiến trình đang thực hiện hay đang đợi thiết bị vào ra) ➢Thời gian đáp ứng (Nhỏ nhất) ▪ Từ lúc gửi câu hỏi cho tới khi câu trả lời đầu tiên được tạo ra • Tiến trình có thể tạo kết quả ra từng phần • Tiến trình vẫn tiếp tục tính toán kết qủa mới trong khi kết quả cũ được gửi tới người dung.
  17. II. TIÊU CHUẨN ĐIỀU PHỐI ➢Các giải thuật lập lịch sẽ được đánh giá qua 5 tiêu chuẩn này. ➢Các giải thuật gồm: ▪ First Come, First Served (FCFS) scheduling ▪ Shortest-Job-First scheduling ▪ Priority Scheduling ▪ Round-robin scheduling ▪ Etc.,
  18. TIÊU CHUẨN điều phối TỪ CÁC GÓC NHÌN ➢Hướng đến người sử dụng (user-oriented) ▪ Thời gian hoàn thành • Thời gian từ lúc submission đến lúc process kết thúc • Cần quan tâm với các hệ thống xử lý bó (batch system) ▪ Thời gian đáp ứng • Cần quan tâm với các hệ thống giao tiếp (interactive system)
  19. TIÊU CHUẨN điều phối TỪ CÁC GÓC NHÌN ➢Hướng đến hệ thống (system-oriented) ▪ Sử dụng CPU ▪ Công bằng (fairness) ▪ Thông lượng: số process hoàn tất trong một đơn vị thời gian
  20. HAI THÀNH PHẦN CỦA CHIẾN LƯỢC ĐIỀU PHỐI ➢Hàm lựa chọn(selection function) ▪ Xác định process nào trong ready queue sẽ được thực thi tiếp theo. Thường theo các tiêu chuẩn như • w = tổng thời gian đợi trong hệ thống • e = thời gian đã được phục vụ • s = tổng thời gian thực thi của process (bao gồm cả trị e)
nguon tai.lieu . vn