Đề cương môn Nguyên lý hệ điều hành

15 516 0
Đề cương môn Nguyên lý hệ điều hành

Đ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 2: Các giải thuật lập lịch CPU 1. Một số khái niệm Giờ CPU: là time mà CPU phục vụ hoạt động cho các tiến trình, nó có thể xử lí các dòng lệnh, các chỉ thị, các tính toán. Tại mỗi thời điểm chỉ có một tiến trình được phân phối giờ CPU đê hoạt động Lập lịch cho CPU: là tổ chức 1 hàng đợi cho các tiến trình sẵn sang để phân phối giờ CPU cho chúng dựa vào độ ưu tiên của các tiến trình sao cho việc sử dụng CPU hiệu quả nhất. + Độ ưu tiên của các tiến trình phụ thuộc vào thuật toán mà hệ thống dùng để lập lịch: time xuất hiện tiến trình trong hàng đợi, time thực hiện các tiến trình, time kết thúc các tiến trình 2. Một số thuật toán lập lịch CPU a. Bài toán Xét n tiến trình Pi song hành có thời điểm vào RL tương ứng là ti và thời gian xử lý là ai Yêu cầu bài toán đưa ra thứ tự của Pi để được thực hiện phân phối tới CPU và cho ra thời gian TB là nhỏ nhất. + Thời gian chờ Pi = thời điểm xử lý ti + Thời gian chờ TB = ∑ thời gian chờ Pi n b. c. Thuật toán lập lịch vào trước phục vụ trước (FCFS) Quy tắc: + Thời điểm xuất hiện ti trong RL + Thực hiện theo chế độ độc quyền Cách thực hiện: giả sử Pi, ti, ai và Pj, tj, aj¬ với ti< t¬j  Pi được phụ vụ hết a¬I rồi Pj được thực hiên sau Ưu điểm: giờ CPU ko bị phân phối lại (ko bị ngắt) và chi phí tổ chức thực hiện thấp nhất (do ko phải thay đổi thứ tự ưu tiên phục vụ) Nhược điểm: thời gian trung bình chờ phục vụ của các tiến trình là như nhau (ko kể tiến trình dài hay ngắn) dẫn đến 3 nhược điểm + Thời gian chờ trung bình sẽ tăng vô hạn khi hệ thống tiếp cận tới hạn khả năng phục vụ của mình + Nếu độ phát tán thời gian thực hiện tiến trình tăng thì thời gian chờ trung bình cũng tăng theo

Đề cương môn Nguyên lý hệ điều hành Chương 2: Các giải thuật lập lịch CPU Một số khái niệm - Giờ CPU: time mà CPU phục vụ hoạt động cho tiến trình, xử lí dòng lệnh, thị, tính toán Tại thời điểm có tiến trình phân phối CPU đê hoạt động - Lập lịch cho CPU: tổ chức hàng đợi cho tiến trình sẵn sang để phân phối CPU cho chúng dựa vào độ ưu tiên tiến trình cho việc sử dụng CPU hiệu + Độ ưu tiên tiến trình phụ thuộc vào thuật toán mà hệ thống dùng để lập lịch: time xuất tiến trình hàng đợi, time thực tiến trình, time kết thúc tiến trình Một số thuật toán lập lịch CPU a Bài toán - Xét n tiến trình Pi song hành có thời điểm vào RL tương ứng ti thời gian xử lý - Yêu cầu toán đưa thứ tự Pi để thực phân phối tới CPU cho thời gian TB nhỏ + Thời gian chờ Pi = thời điểm xử lý - ti + Thời gian chờ TB = ∑ thời gian chờ Pi / n b c d Thuật toán lập lịch vào trước phục vụ trước (FCFS) - Quy tắc: + Thời điểm xuất ti RL + Thực theo chế độ độc quyền - Cách thực hiện: giả sử Pi, ti, Pj, tj, aj với ti < tj  Pi phụ vụ hết aI Pj thực hiên sau - Ưu điểm: CPU ko bị phân phối lại (ko bị ngắt) chi phí tổ chức thực thấp (do ko phải thay đổi thứ tự ưu tiên phục vụ) - Nhược điểm: thời gian trung bình chờ phục vụ tiến trình (ko kể tiến trình dài hay ngắn) dẫn đến nhược điểm + Thời gian chờ trung bình tăng vô hạn hệ thống tiếp cận tới hạn khả phục vụ + Nếu độ phát tán thời gian thực tiến trình tăng thời gian chờ trung bình tăng theo + Khi có tiến trình dài, bị ngắt tiến trình khác phải chờ đợi lâu Thuật toán lập lịch xoay vòng RR (Round Robin) Quy tắc: + Thời điểm ti xuất Pi RL + Time hệ thống phục vụ tiến trình gọi quantum (q) + Thực theo chế độ độc quyền - Cách thực hiện: giả sử Pi, ti, Pj, tj, aj với ti < tj  Pi phụ vụ trước + q: Pi xử lí xong kết thúc thống + > q: Pi xử lí hết time hệ thống yêu cầu q đẩy RL xếp cuối hàng đợi chờ đến lượt xử lí - Ưu điểm: cho phép hệ thống ưu tiên cho tiến trình ngắn (vì kết thúc sớm) ko gây tổn hại lớn cho tiến trình dài - Nhược điểm: thường xuyên phải phân phối lại CPU nên thời gian chờ đợi trung bình RR lớn FCFS Thuật toán lập lịch với độ ưu tiên - Quy tắc: + Thời điểm ti xuất Pi RL + Độ ưu tiên gắn cho tiến trình Pi tương ứng bi + Thực theo chế độ độc quyền không độc quyền - Cách thực hiện: giả sử Pi, ti, ai, bi Pj, tj, aj, bj với ti < tj, bi< bj + Độc quyền: Pi xử lí, Pj vào RL bi< bj Pi tiếp tục thực hiện, Pj phải chờ + Không độc quyền: : Pi xử lí, Pj vào RL bi< bj làm cho Pi bị đẩy hàng đợi, Pj vào phục vụ - e f Thuật toán lập lịch thời gian công việc ngắn (SJF) - Quy tắc: + Thời điểm ti xuất Pi RL + Time xử lí Pi + Thực theo chế độ độc quyền không độc quyền - Cách thực hiện: giả sử Pi, ti, Pj, tj, aj với ti < tj + Độc quyền: Pi xử lí, Pj vào RL ai> aj Pi xử lí bình thường, Pj phục vụ sau Pi hết time yêu cầu + Không độc quyền: Pi xử lí, Pj vào RL, Pi bị đẩy hàng đợi, Pj vào phục vụ - Ưu điểm: Thời gian chờ trung bình tiến trình ngắn FCFS, SJF nhanh chóng loại bỏ tiến trình ngắn -> giảm số lượng tiến trình hàng đợi - Nhược điểm: chế độ phân phối lại CPU đc áp dụng trường hợp ngắt tiến trình dài thực để phục vụ tiến trình ngắn xuất hàng đợi Nếu tiến trình xuất có tổng thời gian thực ngắn dài thời gian để thực nốt tiến trình thực việc ngắt tiến trình ko hợp lý Chương 3: Các giải thuật thay trang Thuật toán FIFO - Chọn trang thay trang nạp vào lâu nhớ - Dễ cài đặt - Hiệu suất phụ thuộc vào số lượng khung trang trống tần suất xuất trang Thuật toán tối ưu (Optimal) - Chọn trang thay trang lâu sử dụng tương lai Thuật toán LRU - Chọn trang thay trang có thời điểm truy xuất lâu khứ Chương 4: Các thuật toán định vị đầu từ đọc/Ghi FCFS - Nguyên tắc: Để truy nhập tới file hệ thống tổ chức hàng đợi yêu cầu phục vụ track ( lưu liệu file cần truy nhập) Track có yêu cầu cần phục vụ trước đầu từ đọc/ghi dịch chuyển tới trước SSTF - Thuật toán chọn track có time di chuyển đầu từ đọc/ghi ngắn phục vụ trước Scan - Thuật toán đầu từ đọc/ghi quét từ track nhỏ đến track lớn nhất, sau quét ngược lại track có nhu cầu phục vụ C-scan - Thuật toán đầu từ đọc/ghi quét từ track nhỏ đến track lớn đầu từ đọc ghi không quét đường Look - Thuật toán đầu từ đọc ghi quét từ track nhỏ đến track lớn sau quét ngược lại quét phạm vi track có nhu cầu phục vụ không quét tới track cuối (nếu track yêu cầu phục vụ) C-look - Thuật toán đầu từ đọc ghi quét từ track nhỏ đến track lớn không quét ngược lại quét phạm vi track có   nhu cầu phục vụ không quét tới track cuối (nếu track yêu cầu phục vụ) Ba phương pháp cấp phát nhớ hệ điều hành Khi có tiến trình cần nạp vào nhớ mà nhớ có nhiều khối nhớ trống (free block) có kích thước lớn kích thước tiến trình đó, hệ điều hành phải định chọn khối nhớ trống phù hợp để nạp tiến trình cho việc lựa chọn dẫn đến việc sử dụng nhớ hiệu Có thuật toán để lựa chọn: - First fit: hệ điều hành quét qua khối nhớ trống khối nhớ trống nhớ chọn khối nhớ trống có kích thước đủ lớn để nạp tiến trình - Best fit: chọn khối nhớ có kích thước vừa kích thước tiến trình cần nạp vào nhớ - Worst fit: hệ điều hành bắt đầu quét từ khối nhớ trống kế sau khối nhớ vừa cấp phát chọn khối nhớ trống đủ lớn để nạp tiến trình Phương pháp cấp phát không gian nhớ tự cho đĩa từ Cấp phát liên tục : Để phân bổ không gian nhớ cho file hệ thống chọn đoạn liên tục khối đĩa tự để cấp phát cho file Với phương pháp , để định vị file hệ thống cần biết địa khối đĩa tự số lượng block dùng - Ưu điểm: + Hỗ trợ cho phương pháp truy nhập truy nhập trực tiếp - Nhược điểm : + Phải chọn thuật toán tối ưu để tìm vùng không gian tự cấp phát chi file ( first fit , best fit , worst fit) + Có xảy trường hợp không đủ số khối đĩa tự liên tiếp cần thiết để cấp phát cho file + Trong trường hợp khối đĩa tự nằm tản mạn không sử dụng gây lãng phí không gian nhớ - Cấp phát liên kết : Trong trường hợp mối file định vị thư mục thiết bị hai trỏ trỏ tới khối đĩa , trỏ tới khối đĩa cuối cấp cho file Trong khối đĩa cấp phát có trỏ để trỏ tới khối đĩa - Ưu điểm : Sử dụng khối đĩa tự nằm tản mạn - Nhược điểm : hỗ trợ truy nhập tuân tự không hỗ trợ truy nhập trực tiếp ,độ tin cậy không đảm bảo bị trỏ - Cấp phát theo số :Để cấp phát không gian cho file hệ thống sử dụng khối đĩa đặc biệt gọi lag khối đĩa số cho file Trong khối đĩa số chứa địa khối đĩa cấp phát cho file,trong thư mục thiết bị địa khối đĩa số.Khi khối đĩa đượccấp phát cho file hệ thống loại bỏ địac hỉ - khối khỏi danh sách khối đĩa tự cập nhật vào khổi số file - Ưu điểm : hỗ trợ truy nhập trực tiếp - Nhược điểm : Lãng phí không gian nhwos dành cho khối đĩa số Bài tập ví dụ lập lịch CPU Xét tiến trình sau Tiến trình P1 P2 P3 P4 P5 Thời điểm vào RL 2,5 4,5 Thời gian CPU 10 Độ ưu tiên 3 Hãy cho biết kết điều phối theo chiến lược FCFS, SJF, Round Robin với q=2, độ ưu tiên độc quyền- không độc quyền Tính thời gian chờ cho tiến trình time chờ trung bình chiến lược BÀI TẬP CHƯƠNG II QUẢN LÍ TIẾN TRÌNH 1./ Xét tập hợp tiến trình sau: Tiến trình Thời điểm vào RL Thời gian CPU Độ ưu tiên P1 10 P2 1 P3 2.5 P4 P5 4.5 Hãy cho biết kết điều phối theo chiến lược • • • • • • FCFS SJF Round Robin với q = Độ ưu tiên độc quyền Độ ưu tiên không độc quyền tính thời gian chờ cho tiến trình thời gian chờ trung bình chiến lược Giải a./ FCFS P1 P2 P3 P4 P5 10 P1 11 P2 13 14 P3 P4 P5 19 Thời gian chờ: P1: P2: 10 – = P3: 11 – 2.5 = 8.5 P4: 13 – = 10 ⇒ Thời gian chờ trung bình = 37 = 7.45 P5: 14 – 4.5 = 9.5 b./ SJF P1 P2 P3 P4 P5 10 11 12 14 19 P1 P2 P4 P3 P5 Thời gian chờ: P1: P2: 10 – = ⇒ P3: 12 – 2.5 = 9.5 P4: 11 – = Thời gian chờ trung bình = 36 = 7.2 P5: 14 – 4.5 = 9.5 P1 P2 P1 c./ Round Robin P3 P4 P5 P2 P1 P3 P4 P5 10 P1 12 P5 14 P1 16 P5 17 P1 19 Thời gian chờ: P1: + + + = P2: – = P3: – 2.5 = 2.5 ⇒ Thời gian chờ trung bình = 25 =5 P4: – = P5: + + – 4.5 = 7.5 d./ Độ ưu tiên độc quyền P1 P2 P3 P4 P5 10 11 16 18 19 P1 P2 P5 P3 P4 Thời gian chờ: P1: P2: 10 – = ⇒ P3: 16 – 2.5 = 13.5 = Thời gian chờ trung bình 44 = 8.8 P4: 18 – = P5: 11 – 4.5 = 6.5 e./ Độ ưu tiên không độc quyền P1 P2 P3 P4 P1 P2 P5 4.5 P1 P5 9.5 11.5 P3 18 P1 Thời gian chờ: P1: + = P2: ⇒ P3: 9.5 – 2.5 = = Thời gian chờ trung bình 25 =5 P4: 18 – = 15 P5 : 2./ Cho tiến trình sau: Tiến trình Thời điểm vào RL Thời gian CPU P1 P2 0.4 P3 1 Hãy cho biết kết điều phối chiến lược FCFS SJF thời gian chờ chiến lược 19 P4 Giải a./ FCFS P1 P2 P3 P1 P2 P3 12 13 Thời gian chờ P1: P2: – 0.4 = 7.6 ⇒ P3: 12 – = 11 b./ SJF P1 P2 = Thời gian chờ trung bình 18.6 = 6.2 P3 P1 P3 13 P2 P1: P2: – 0.4 = 8.6 P3: – = ⇒ = Thời gian chờ trung bình 15.6 = 5.2 3./ Điều phối tiến trình sau theo chiến lược điều phối độ ưu tiên độc quyền Tiến trình Chiều dài CPU burst Thời điểm vào RL Độ ưu tiên P1 2 P2 P3 P4 Tính thời gian chờ cho tiến trình thời gian chờ trung bình P1 P2 P1 Giải P4 P3 P3 P4 14 P2 Thời gian chờ: P1: P2: – = P3: ⇒ = Thời gian chờ trung bình 10 = 2.5 P4: – = Chú ý: - FCFS vào trước thực trước SJF tiến trình có chiều dài CPU burst ngắn thực trước Bài tập ví dụ thay trang Cho trang có thứ tự yêu cầu sau: 7, 0, 1, 2, 0, 3, 0, 4, 2, 3, 0, 3, 2, 1, 2, 0, 1, 7, 0, Cho biết trình thay trang số lỗi trang dùng thuật toán FIFO, thuật toán tối ưu Optimal, thuật toán RLU biết có khung trang trống 10 Bài làm a FIFO: chọn trang thay trang nạp vào lâu nhớ 3 2 7 7 2 2 4 0 0 0 7 0 0 3 2 2 1 1 0 1 1 0 3 3 2 2 2  Có 15 lỗi trang b Thuật toán tối ưu Optimal: chọn trang thay trang lâu sử dụng tương lai 3 2 7 7 2 2 2 2 2 2 2 7 0 0 0 4 0 0 0 0 0 1 3 3 3 3 1 1 1  Có lỗi trang c  Thuật toán RLU: chọn trang thay trang có thời điểm truy xuất lâu khứ 3 2 7 7 2 2 4 0 1 1 1 0 0 0 0 3 3 3 0 0 1 3 2 2 2 2 7 Có 12 lỗi trang 11 Bài tập ví dụ sơ đồ di chuyển đầu từ đọc ghi File F1 phân bổ track có số thứ tự sau: 98, 183, 37, 122, 14, 124, 65, 67 Đầu từ đọc ghi định vị track có STT 53 Hãy sử dụng thuật toán để vẽ sơ đồ: FCFS, SSTF, Scan, C-Scan, Look, C-Look Bài làm a FCFS: track có yêu cầu phục vụ trước đầu từ đọc ghi dịch chuyển tơi trước 14 37 53 65 67 98 122 124 183 12 b SSTF: thuật toán chọn track có thời gian di chuyển ngắn phục vụ trước 14 37 53 65 67 98 122 124 183 c Scan: thuật toán này, đầu từ đọc ghi quét từ track nhỏ đến track lớn sau quét ngược lại, track có nhu cầu phục vụ 14 37 53 65 67 98 122 124 183 Ma x 10 11 d C-Scan: thuật toán tương tự Scan đầu từ đọc ghi không phục vụ đường (không quét ngược lại) 13 14 37 53 65 67 98 122 124 183 Ma x 10 11 e Look: tương tự Scan thuật toán đầu từ đọc ghi quét phạm vi track có nhu cầu phục vụ không quét tới track hay track cuối (nếu track nhu cầu phục vụ) 14 37 53 65 67 98 122 124 183 f C-Look: tương tự Look đầu từ đọc ghi không phục vụ đường 14 37 53 65 67 98 122 124 183 14 15

Ngày đăng: 08/10/2016, 15:44

Từ khóa liên quan

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

  • Đang cập nhật ...

Tài liệu liên quan