Bài Giảng Hệ Điều Hành-Chương 4 : LẬP LỊCH BIỂU CPU CPU pot

44 991 4
Bài Giảng Hệ Điều Hành-Chương 4 : LẬP LỊCH BIỂU CPU CPU pot

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

CHƯƠNG CHƯƠNG 4: L 4: L Ậ Ậ P L P L Ị Ị CH BI CH BI Ể Ể U CPU U CPU CPU CPU Scheduling Scheduling 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Feb 2, 2005 N N Ộ Ộ I DUNG I DUNG  Các khái niệmcơ sở  Các tiêu chuẩnlậplịch biểu  Các thuật toán lậplịch biểu  Lậplịch biểu đa processors  Lậplịch biểuthờigianthực (Real-Time Scheduling)  Các ví dụ HĐH  Đánh giá thuật toán 5.3 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Feb 2, 2005 C C Á Á C KH C KH Á Á I NI I NI Ệ Ệ M CƠ S M CƠ S Ở Ở  Sử dụng CPU cực đạinhận đượcbởi đachương  Chu kỳ CPU-I/O (CPU–I/O Burst Cycle) – sự thựchiện quá trình gồmchukỳ thựchiệnCPU vàchờ I/O  Sự phân tán CPU burst 5.4 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Feb 2, 2005 DÃY LUÂN PHIÊN C DÃY LUÂN PHIÊN C Á Á C CHU K C CHU K Ỳ Ỳ CPU V CPU V À À CHU CHU K K Ỳ Ỳ I/O I/O 5.5 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Feb 2, 2005 BI BI Ể Ể U Đ U Đ Ồ Ồ TH TH Ờ Ờ I GIAN CHU K I GIAN CHU K Ỳ Ỳ CPU CPU 5.6 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Feb 2, 2005 B B Ộ Ộ Đ Đ Ị Ị NH TH NH TH Ờ Ờ I CPU I CPU  Chọn trong các quá trình sẵn sàng một quá trình và cấp CPU cho nó  Quyếtdịnh lậplịch biểuCPU xảyrakhimột quá trình : 1. Chuyểntừ trạng thái running sang trạng thái waiting 2. Chuyểntừ trạng thái running sang trạng thái ready 3. Chuyểntừ trạng thái waiting sang trạng thái ready 4. Kết thúc  Lậplịch biểu cho 1 và 4 là không trưng dụng (nonpreemptive)  Lậplịch biểucònlạilàtrưng dụng (preemptive) 5.7 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Feb 2, 2005 B B Ộ Ộ ĐI ĐI Ề Ề U V U V Ậ Ậ N N  Module điềuvậnchuyển điềukhiển CPU cho quá trình đượcchọn bởibộđịnh thờingắnhạn, bao gồm: z Chuyểnngữ cảnh z Chuyển sang phương thúc user z Nhảy đếnvị trí đúng trong chương trình người dùng để bắt đầu lạichương trình này  Tiềm ẩn điềuvận (Dispatch latency) –thờigianbộđiềuvậnngưng một quá trình và khởi động một quá trình khác 5.8 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Feb 2, 2005 C C Á Á C TIÊU CHU C TIÊU CHU Ẩ Ẩ N L N L Ậ Ậ P L P L Ị Ị CH BI CH BI Ể Ể U U  Sự sử dụng CPU: Làm cho CPU bậnrộnnhư có thể  Năng lựctruyền qua (throughput): số quá trình hoàn tấtsự thựchiệncủa chúng trong một đơnvị thờigian  Thời gian quay vòng (Turnaround time) – lượng thờigian thựchiệnmột quá trình  Thờigianchờ (Waiting time) – lượng thờigianmột quá trình phảichờ trong hàng đợi ready  Thờigianđáp ứng (Response time) – lượng thờigiantừ khi mộtyêucầu được đệ trình đếnkhiđáp ứng đầutiên đượcsinhra 5.9 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Feb 2, 2005 C C Á Á C TIÊU CHU C TIÊU CHU Ẩ Ẩ N T N T Ố Ố I ƯU I ƯU  Max sự sử dụng CPU  Max throughput  Min turnaround time  Min waiting time  Min response time 5.10 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Feb 2, 2005 First First - - Come, First Come, First - - Served (FCFS) Served (FCFS) Process Burst Time P 1 24 P 2 3 P 3 3  Giả sử các quá trình đếntheothứ tự: P 1 , P 2 , P 3 Biểu đồ Gantt cho lịch biểu:  Waiting time: đốivới P 1 = 0; P 2 = 24; P 3 = 27  Waiting time trung bình: (0 + 24 + 27)/3 = 17 P 1 P 2 P 3 24 27 300 [...]... đợi: foreground (interactive) background (batch) Mỗi hàng đợi có thuật toán lập lịch biểu riêng của nó foreground – RR background – FCFS Lập lịch biểu được làm giữa các hàng đợi Lập lịch biểu ưu tiên cố định (phục vụ tất cả quá trình trong foreground sau đó mới đến các quá trình trong background) Có thể gây nên chết đói Lát thời gian: mỗi hàng đợi nhận một lượng thời gian CPU nhất định để lập lịch biểu. .. P2 2.0 4 P3 4. 0 1 P4 5.0 4 SJF không trưng dụng P1 0 3 P3 7 P2 8 P4 12 16 Thời gian chờ trung bình = (0 + 6 + 3 + 7) /4 = 4 Operating System Concepts – 7th Edition, Feb 2, 2005 5.13 Silberschatz, Galvin and Gagne ©2005 VÍ DỤ SJF TRƯNG DỤNG Process Arrival Time Burst Time P1 0.0 7 P2 2.0 4 P3 4. 0 1 P4 5.0 4 SJF trưng dụng P1 0 P2 2 P3 4 P2 5 P1 P4 11 7 16 Thời gian chờ trung bình = (9 + 1 + 0 +2) /4 = 3... này để lập lịch biểu quá trình với thời gian ngắn nhất Hai sơ đ : Không trưng dụng: mỗi khi CPU được gán cho một quá trình, nó không bị trưng dụng đến tận khi hoàn tất chu kỳ CPU của nó Trưng dụng: Nếu một quá trình mới đến có chu kỳ CPU ngắn hơn thời gian còn lại của quá trình đang thực hiện, trưng dụng CPU của quá trình đang thực hiện, cấp CPU cho quá trình mới đến Sơ đồ này được biết dưới tên: Shortest-Remaining-Time-First... 2005 5.23 Silberschatz, Galvin and Gagne ©2005 LẬP LỊCH BIỂU HÀNG ĐỢI ĐA MỨC Operating System Concepts – 7th Edition, Feb 2, 2005 5. 24 Silberschatz, Galvin and Gagne ©2005 HÀNG ĐỢI PHẢN HỒI ĐA MỨC Mỗi quá trình có thể di chuyển giữa các hàng đợi Bộ lập lịch biểu hàng đợi phản hồi đa mức được xác định bởi các tham số sau: Số hàng đợi Các thuật toán lập lịch biểu cho mỗi hàng đợi Phương pháp xác định khi... – 7th Edition, Feb 2, 2005 5. 14 Silberschatz, Galvin and Gagne ©2005 XÁC ĐỊNH ĐỘ DÀI CHU KỲ CPU KẾ TIẾP Chỉ có thể ước lượng độ dài Sử dụng độ dài cùa các chu kỳ CPU trước đó, ước lượng độ dài chu kỳ CPU kế tiếp theo trung bình m : - tn = độ dài chu kỳ CPU thứ n - τn = độ dài ước lượng chu kỳ CPU thứ n - : 0 ≤ α ≤ 1 - độ dài ước lượng chu kỳ CPU thứ n+1 được xác định: τ n +1 = α tn + (1 − α )τ n ... 5.17 Silberschatz, Galvin and Gagne ©2005 LẬP LỊCH BIỂU ƯU TIÊN Mỗi quá trình được gán cho một số ưu tiên (một số nguyên) CPU được cấp cho quá trình với độ ưu tiên cao nhất (thông thường số ưu tiên nhỏ = độ ưu tiên cao) Trưng dụng Không trưng dụng SJF là lập lịch biểu ưu tiên trong đó quá trình có chu kỳ CPU tiên đoán ngắn nhất có độ ưu tiên cao nhất Vấn đ : Sự chết đói – quá trình có độ ưu tiên thấp... t : P2 , P3 , P1 Biểu đồ Gantt cho lịch biểu: P2 0 P3 3 P1 6 30 Waiting time đối với P1 = 6; P2 = 0; P3 = 3 Average waiting time: (6 + 0 + 3)/3 = 3 Tốt hơn nhiều so với trường hợp trước Hiệu ứng đoàn xe: quá trình ngắn đi sau quá trình dài Operating System Concepts – 7th Edition, Feb 2, 2005 5.11 Silberschatz, Galvin and Gagne ©2005 Shortest-Job-First (SJF) Kết hợp với mỗi quá trình độ dài chu kỳ CPU. .. Operating System Concepts – 7th Edition, Feb 2, 2005 5.19 Silberschatz, Galvin and Gagne ©2005 VÍ DỤ RR với Time Quantum = 20 Process Burst Time P1 53 P2 17 P3 68 P4 24 Biểu đồ Gantt: P1 0 P2 20 P3 37 P4 57 P1 77 P3 P4 P1 P3 P3 97 117 121 1 34 1 54 162 Thông thường, So với SJF, thời gian quay vòng trung bình của RR cao hơn, nhưng thời gian đáp ứng trung bình của RR tốt hơn Operating System Concepts – 7th... ©2005 LẬP LỊCH BIỂU Solaris 2 Operating System Concepts – 7th Edition, Feb 2, 2005 5.31 Silberschatz, Galvin and Gagne ©2005 BẢNG ĐIỀU VẬN Solaris Operating System Concepts – 7th Edition, Feb 2, 2005 5.32 Silberschatz, Galvin and Gagne ©2005 CÁC ƯU TIÊN Windows XP Operating System Concepts – 7th Edition, Feb 2, 2005 5.33 Silberschatz, Galvin and Gagne ©2005 LẬP LỊCH BIỂU Linux Hai thuật toán: time-sharing... được lập lịch biểu FCFS Operating System Concepts – 7th Edition, Feb 2, 2005 5.26 Silberschatz, Galvin and Gagne ©2005 CÁC HÀNG ĐỢI PHẢN HỒI ĐA MỨC Operating System Concepts – 7th Edition, Feb 2, 2005 5.27 Silberschatz, Galvin and Gagne ©2005 LẬP LỊCH BIỂU ĐA Processors Phức tạp hơn Các processors thuần nhất Chia sẻ nạp Đa xử lý phi đối xứng – chỉ một processor truy xuất các cấu trúc dữ liệu hệ thống . 2005 N N Ộ Ộ I DUNG I DUNG  Các khái niệmcơ sở  Các tiêu chuẩnlậplịch biểu  Các thuật toán lậplịch biểu  Lậplịch biểu đa processors  Lậplịch biểuthờigianthực (Real-Time Scheduling)  Các ví dụ HĐH . Time P 1 24 P 2 3 P 3 3  Giả sử các quá trình đếntheothứ t : P 1 , P 2 , P 3 Biểu đồ Gantt cho lịch biểu:  Waiting time: đốivới P 1 = 0; P 2 = 24; P 3 = 27  Waiting time trung bình: (0 + 24 +. ready 3. Chuyểntừ trạng thái waiting sang trạng thái ready 4. Kết thúc  Lậplịch biểu cho 1 và 4 là không trưng dụng (nonpreemptive)  Lậplịch biểucònlạilàtrưng dụng (preemptive) 5.7 Silberschatz,

Ngày đăng: 28/06/2014, 15:20

Từ khóa liên quan

Mục lục

  • CHƯƠNG 4: LẬP LỊCH BIỂU CPU CPU Scheduling

  • NỘI DUNG

  • CÁC KHÁI NIỆM CƠ SỞ

  • DÃY LUÂN PHIÊN CÁC CHU KỲ CPU VÀ CHU KỲ I/O

  • BIỂU ĐỒ THỜI GIAN CHU KỲ CPU

  • BỘ ĐỊNH THỜI CPU

  • BỘ ĐIỀU VẬN

  • CÁC TIÊU CHUẨN LẬP LỊCH BIỂU

  • CÁC TIÊU CHUẨN TỐI ƯU

  • First-Come, First-Served (FCFS)

  • FCFS (Cont.)

  • Shortest-Job-First (SJF)

  • VÍ DỤ SJF KHÔNG TRƯNG DỤNG

  • VÍ DỤ SJF TRƯNG DỤNG

  • XÁC ĐỊNH ĐỘ DÀI CHU KỲ CPU KẾ TIẾP

  • TIÊN ĐOÁN ĐỘ DÀI CHU KỲ CPU KẾ TIẾP

  • VÍ DỤ TRUNG BÌNH MŨ

  • LẬP LỊCH BIỂU ƯU TIÊN

  • Round Robin (RR)

  • VÍ DỤ RR với Time Quantum = 20

Tài liệu cùng người dùng

Tài liệu liên quan