Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 43 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
43
Dung lượng
1,54 MB
Nội dung
Chương 4: Định thời CPU - SinhVienZone.com https://fb.com/sinhvienzonevn Câu hỏi ôn tập Process control block (PCB) chứa thơng tin gì? Các tác vụ tiến trình? Tại phải định thời, có loại định thời? SinhVienZone.com https://fb.com/sinhvienzonevn Định thời CPU Mục tiêu Biết khái niệm định thời Biết tiêu chuẩn định thời CPU Hiểu giải thuật định thời Vận dụng giải thuật định thời để làm tập mô SinhVienZone.com https://fb.com/sinhvienzonevn Định thời CPU Nội dung Các khái niệm định thời Các định thời Các tiêu chuẩn định thời CPU Các giải thuật định thời First-Come, First-Served (FCFS) Shortest Job First (SJF) Shortest Remaining Time First (SRTF) Priority Scheduling SinhVienZone.com https://fb.com/sinhvienzonevn Định thời CPU Nội dung Các khái niệm định thời Các định thời Các tiêu chuẩn định thời CPU Các giải thuật định thời First-Come, First-Served (FCFS) Shortest Job First (SJF) Shortest Remaining Time First (SRTF) Priority Scheduling SinhVienZone.com https://fb.com/sinhvienzonevn Định thời CPU Khái niệm Trong hệ thống multitasking Thực thi nhiều chương trình đồng thời làm tăng hiệu suất hệ thống Tại thời điểm, hệ thống đơn xử lý (single-processor system) có process thực thi; process khác phải chờ xử lý rảnh tái định thời lại Cần phải giải vấn đề phân chia, lựa chọn process thực thi cho hiệu Phải có chiến lược định thời CPU, tức để đưa process vào thực thi SinhVienZone.com https://fb.com/sinhvienzonevn Định thời CPU Nội dung Các khái niệm định thời Các định thời Các tiêu chuẩn định thời CPU Các giải thuật định thời First-Come, First-Served (FCFS) Shortest Job First (SJF) Shortest Remaining Time First (SRTF) Priority Scheduling SinhVienZone.com https://fb.com/sinhvienzonevn Định thời CPU Các định thời (tt) Long-term scheduling Medium-term scheduling (Xem lại slide chương 3) SinhVienZone.com https://fb.com/sinhvienzonevn Định thời CPU Các định thời (tt) Short-term scheduling Xác định process ready queue chiếm CPU để thực thi (còn gọi định thời CPU, CPU scheduling) Short term scheduler gọi với tên khác dispatcher Bộ định thời short-term gọi process: (1) Chuyển từ trạng thái running tới waiting (2) Chuyển từ trạng thái running tới ready (3) Chuyển từ waiting tới ready (4) Kết thúc SinhVienZone.com https://fb.com/sinhvienzonevn Định thời CPU Dispatcher Dispatcher chuyển quyền điều khiển CPU cho process chọn định thời ngắn hạn Bao gồm: Chuyển ngữ cảnh (sử dụng thông tin ngữ cảnh PCB) Chuyển chế độ người dùng Nhảy đến vị trí thích hợp chương trình ứng dụng để khởi động lại chương trình (chính program counter PCB) Cơng việc gây phí tổn Dispatch latency: thời gian mà dispatcher dừng process khởi động process khác SinhVienZone.com 10 https://fb.com/sinhvienzonevn Định thời CPU Preemptive SJF (SRTF) Ví dụ 1: Process Arrival TimeBurst Time P1 P2 P3 P4 Ví dụ 2: Gantt Chart P1 P2 P3 P2 P4 P1 11 16 Average waiting time = (9 + + + 2)/4 = SinhVienZone.com 29 Process Arrival TimeBurst Time P1 P2 P3 P4 https://fb.com/sinhvienzonevn Định thời CPU Nhận xét giải thuật SJF Có thể xảy tình trạng “đói” (starvation) process có CPU-burst lớn có nhiều process với CPU-burst nhỏ đến hệ thống Cơ chế non-preemptive không phù hợp cho hệ thống time sharing (interactive) Giải thuật SJF ngầm định độ ưu tiên theo burst time Các CPU-bound process có độ ưu tiên thấp so với I/O-bound process, process không thực I/O thực thi độc chiếm CPU kết thúc SinhVienZone.com 30 https://fb.com/sinhvienzonevn Định thời CPU Nhận xét giải thuật SJF (tt) Tương ứng với process cần có độ dài CPU burst Hàm lựa chọn: chọn process có độ dài CPU burst nhỏ Chứng minh được: SJF tối ưu việc giảm thời gian đợi trung bình Nhược điểm: Cần phải ước lượng thời gian cần CPU process Giải pháp cho vấn đề này? SinhVienZone.com 31 https://fb.com/sinhvienzonevn Định thời CPU Nhận xét giải thuật SJF (tt) (Thời gian sử dụng CPU độ dài CPU burst) Như để ước lượng CPU burst tiếp theo? Trung bình tất CPU burst đo khứ Nhưng thông thường CPU burst phản ánh đúng hành vi process tương lai Một kỹ thuật thường dùng sử dụng trung bình hàm mũ (exponential averaging) n 1 t n 1 n Với n 1 tn 0≤a≤1 : giá trị ước lượng độ dài CPU burst thứ n +1 : giá trị thật độ dài CPU burst thứ n Nếu chọn a = ½ có nghĩa trị đo đượct n trị dự đoán n xem quan trọng SinhVienZone.com 32 https://fb.com/sinhvienzonevn Định thời CPU Dự đoán thời gian sử dụng CPU Độ dài CPU burst đo Độ dài CPU burst dự đốn, với a = ½ 0 = 10 SinhVienZone.com 33 https://fb.com/sinhvienzonevn Định thời CPU Nội dung Các khái niệm định thời Các định thời Các tiêu chuẩn định thời CPU Các giải thuật định thời First-Come, First-Served (FCFS) Shortest Job First (SJF) Shortest Remaining Time First (SRTF) Priority Scheduling SinhVienZone.com 34 https://fb.com/sinhvienzonevn Định thời CPU Priority Scheduling Mỗi process gán độ ưu tiên CPU cấp cho process có độ ưu tiên cao Định thời sử dụng độ ưu tiên có thể: Preemptive Nonpreemptive SinhVienZone.com 35 https://fb.com/sinhvienzonevn Định thời CPU Priority Scheduling (tt) SJF giải thuật định thời sử dụng độ ưu tiên với độ ưu tiên thời-gian-sử-dụng-CPU-dựđoán Gán độ ưu tiên dựa vào: Yêu cầu nhớ Số lượng file mở Tỉ lệ thời gian dùng cho I/O thời gian sử dụng CPU Các u cầu bên ngồi ví dụ như: số tiền người dùng trả thực thi công việc SinhVienZone.com 36 https://fb.com/sinhvienzonevn Định thời CPU Priority Scheduling (tt) Vấn đề: trì hỗn vơ hạn định – process có độ ưu tiên thấp khơng thực thi Giải pháp: làm (aging) – độ ưu tiên process tăng theo thời gian SinhVienZone.com 37 https://fb.com/sinhvienzonevn Định thời CPU Priority Scheduling (tt) Ví dụ: Gantt chart Average waiting time = (6 + + 16 + 18 + 1)/5 = 8.2 SinhVienZone.com 38 https://fb.com/sinhvienzonevn Định thời CPU Nội dung Các khái niệm định thời Các định thời Các tiêu chuẩn định thời CPU Các giải thuật định thời First-Come, First-Served (FCFS) Shortest Job First (SJF) Shortest Remaining Time First (SRTF) Priority Scheduling SinhVienZone.com 39 https://fb.com/sinhvienzonevn Định thời CPU Câu hỏi ôn tâp Có định thời? Kể tên? Nêu tiêu chí định thời? Nêu ưu điểm nhược điểm giải thuật định thời FCFS, SJF, SRTF, Priority? SinhVienZone.com 40 https://fb.com/sinhvienzonevn Định thời CPU Bài tập Sử dụng giải thuật FCFS, SJF, SRTF, Priority để tính giá trị thời gian đợi, thời gian đáp ứng thời gian hoàn thành trung bình SinhVienZone.com 41 https://fb.com/sinhvienzonevn Định thời CPU Bài tập (tt) Sử dụng giải thuật FCFS, SJF, SRTF, Priority để tính giá trị thời gian đợi, thời gian đáp ứng thời gian hồn thành trung bình SinhVienZone.com 42 https://fb.com/sinhvienzonevn Định thời CPU Kết thúc chương 4-1 SinhVienZone.com https://fb.com/sinhvienzonevn ... TimeBurst Time P1 P2 P3 P4 Ví dụ 2: Gantt Chart P1 P2 P3 P2 P4 P1 11 16 Average waiting time = (9 + + + 2) /4 = SinhVienZone. com 29 Process Arrival TimeBurst Time P1 P2 P3 P4 https://fb .com/ sinhvienzonevn... queues SinhVienZone. com 21 https://fb .com/ sinhvienzonevn Định thời CPU First-Come, First-Served (FCFS) Ví dụ FCFS: Process Arrival Time Service Time 2 4 5 10 15 20 P1 P2 P3 P4 P5 run SinhVienZone. com. .. TimeBurst Time P1 P2 P3 P4 Gantt Chart P1 P3 P2 P4 12 16 Average waiting time = (0 + + + 7) /4 = SinhVienZone. com 28 https://fb .com/ sinhvienzonevn Định thời CPU Preemptive SJF (SRTF) Ví dụ 1: Process