TAILIEUCHUNG - Lập lịch CPU

Số lượng NSD, số lượng tiến trình luôn lớn hơn số lượng CPU của máy tính rất nhiều Tại một thời điểm, chỉ có duy nhất một tiến trình được thực hiện trên một CPU Vấn đề: Nhu cầu sử dụng nhiều hơn tài nguyên (CPU) đang có Do đó cần lập lịch để phân phối thời gian sử dụng CPU cho các tiến trình của NSD và hệ thống | Nguyên lý hệ điều hành Nguyễn Hải Châu Khoa Công nghệ thông tin Trường Đại học Công nghệ 1 Lập lịch CPU 2 Tại sao phải lập lịch CPU Số lượng NSD số lượng tiến trình luôn lớn hơn số lượng CPU của máy tính rất nhiều Tại một thời điểm chỉ có duy nhất một tiến trình được thực hiện trên một CPU Vấn đề Nhu cầu sử dụng nhiều hơn tài nguyên CPU đang có Do đó cần lập lịch để phân phối thời gian sử dụng CPU cho các tiến trình của NSD và hệ thống CPU-burst và IO-burst Trong suốt thời gian tồn tại trong hệ thống tiến trình được xem như thực hiện hai loại công việc chính Khi tiến trình ở trạng thái running Sử dụng CPU thuật ngữ CPU-burst Khi tiến trình thực hiện các thao tác vào ra Sử dụng thiết bị vào ra thuật ngữ I O burst 5 Hàng chờ lập lịch tiến trình Microsoft Office Outlook CPU-burst Adobe Photoshop CPU-burst 1 Hai loại tiến trình chính Bộ lập lịch ra hoạt động khi. Căn cứ theo cách sử dụng CPU của tiến trình có hai loại tiến trình Tiến trình loại CPU-bound Tiến trình có một hoặc nhiều phiên sử dụng CPU dài Tiến trình loại I O-bound Tiến trình có nhiều phiên sử dụng CPU ngắn tức là thời gian vào ra nhiều 1. Một tiến trình chuyển từ trạng thái running sang waiting 2. Một tiến trình chuyển từ trạng thái running sang ready 3. Một tiến trình chuyển từ trạng thái waiting sang ready 4. Một tiến trình kết thúc Các phương pháp lập lịch Lập lịch non-preemptive 1 và 4 Lập lịch non-preemptive Ngược lại Lập lịch preemptive 9 Một tiến trình giữ CPU đến khi nó kết thúc hoặc chuyển sang trạng thái waiting. Ví dụ Microsoft Windows Apple Macintosh sử dụng lập lịch non-preemptive Có thể sử dụng trên nhiều loại phần cứng vì không đòi hỏi timer Lập lịch preemptive Bộ điều phối dispatcher Hiệu quả hơn lập lịch non-preemptive Thuật toán phức tạp hơn non-preemptive và sử dụng nhiều tài nguyên CPU hơn Ví dụ Microsoft Windows XP Linux UNIX sử dụng lập lịch preemptive Nhiệm vụ Chuyển trạng thái context switch Chuyển về user-mode Thực hiện tiến trình theo trạng thái đã lưu Cần hoạt động hiệu .

TÀI LIỆU HOT