Bài giảng môn học "Nguyên lý hệ điều hành - Chương 2: Quản lý tiến trình" cung cấp cho người học các kiến thức: Tiến trình và điều độ tiến trình, phân loại hệ điều hành, các kỹ thuật điều độ, quản lý processor,... Mời các bạn cùng tham khảo nội dung chi tiết.
Chương – QUẢN LÝ TIẾN TRÌNH $1- TiẾN TRÌNH VÀ ĐiỀU ĐỘ TiẾN TRÌNH 1.1 - Định nghĩa tiến trình: A S0 S1 S2 S3 S4 S5 Sn-1 Sn Sn+1 B 1.2 – Phân loại: song song, • Tiến trình song song: BEGIN END A • B Begin t Phân loại A a A a A A a B b C c Z z I B b B b B C c C c C z Z I Z z Độc lập Z Quan hệ thông tin b c z Phân cấp Đồng mức Phân loại • a) Độc lập: Bảo vệ thông tin, • b)Quan hệ thơng tin: – Tiến trình nhận: Tồn tại? Ở đâu? Giai đoạn nào? – Cơ chế truyền tin: • Hòm thư, • I/O Ports, • Monitor/ Phân loại • c) Phân cấp: • Tài nguyên cho tiến trình con: – Hệ thống QL tài nguyên tập trung: từ hệ thống, – Hệ thống QL tài nguyên phân tán: từ vốn tài ngun tiến trình chính, • QL phân tán: Tiến trình phải kết thúc sau tiến trình POST, WAIT • d) Đồng mức: • Sử dụng chung theo nguyên tắc lần lượt, • Các hệ thống mơ phỏng, trò chơi, 1.3 - BIỂU DIỄN TIẾN TRÌNH SONG SONG • Giả thiết: S1, S2, , Sn – công việc thực song song (Trên nhiều máy) S1 S2 Sn BIỂU DIỄN • cách mơ tả phổ biến: PARBEGIN S1 ; S2; Sn PAREND; COBEGIN S1 ; S2; Sn COEND; Các công việc Si mơ tả xác ngơn ngữ lập trình cụ thể 1.4 – TÀI NGUYÊN GĂNG ĐOẠN GĂNG • Tài nguyên găng: Khả phục vụ đồng thời bị hạn chế, thông thường - • Ví dụ: Máy in, q trình bán vé máy bay • Đoạn găng (chổ hẹp) tiến trình, • Điều độ tiến trình qua đoạn găng: Tổ chức cho tiến trình qua chổ hẹp • Giải thuật điều độ phải đảm bảo yêu cầu Yêu cầu • i) Đảm bảo tài nguyên găng phục vụ khả mình, • ii) Khơng để tiến trình nằm vơ hạn đoạn găng, • iii) Nếu có xếp hàng chờ sớm hay muộn tiến trình qua đoạn găng, • iv) Nếu có tiến trình chờ đợi tài ngun găng giải phóng, tài nguyên găng phải phục vụ cho tiến trình chờ đợi Cơng cụ điều độ • Cơng cụ điều độ: loại: – Cấp cao: hệ thống đảm nhiệm, nằm ngồi tiến trình điều độ, – Cấp thấp: cài đặt vào tiến trình điều độ • Các giải thuật điều độ cấp thấp: lớp giải thuật: – Phương pháp khoá trong, – Phương pháp kiểm tra xác lập, – Kỹ thuật đèn báo $2 – CÁC GIẢI THUẬT ĐIỀU ĐỘ 2.1 Phương pháp khố trong: • Ngun lý: – Mỗi tiến trình (TT) đặt tương ứng tài nguyên găng với biến G, – TT dùng biến để đánh dấu việc sử dụng tài nguyên găng, – Trước vào đoạn găng TT phải kiểm tra biến tương ứng TT khác vào đoạn găng khơng có TT sử dụng tài nguyên găng 10 VẤN ĐỀ • c) Thời điểm đưa TT chờ đợi trở lại sẵn sàng? Cơ chế kiện ngắt Thời điểm? CT TT Sẵn sàng TT Thực KT TT Chờ đợi 47 4.3 - ĐIỀU ĐỘ THỰC HIỆN TT • TT thứ tự ưu tiên phục vụ, • Yêu cầu: – tw – TT kết thúc • Chế độ: – Một dòng xếp hàng, – Nhiều dòng xếp hàng 48 Chế độ dòng xếp hàng • a) FCFS (First come – First served): + Tổ chức: – Ưu tiên – Ưu tiên xếp hàng – Phục vụ + Đánh giá: – – – – – Đơn giản, TT kết thúc được, Không cần input bổ sung, Tw – lớn, Non-Preemtipve 49 Chế độ dòng xếp hàng • b) SJN (Shortest Job – Next): – Thời gian thực ưu tiên cao, – Tw giảm, – TT dài có nguy khơng kết thúc được, – Khó dự báo thời điểm phục vụ TT, – Non-Preemtipve, – Input: Thời gian thực TT 50 Chế độ dòng xếp hàng • c) SRT (Shortest Remaining Time): – Thứ tự ưu tiên phục vụ: xác định theo lượng thời gian lại cần thiết để kết thúc TT, – tw giảm mạnh, – Các đặc trưng khác: tương tự SJN, – TT dài có nguy khơng kết thúc được! • Ở chế độ Non-Preemtipve: cần có tlim huỹ TT đưa thứ tự ưu tiên thấp 51 Chế độ dòng xếp hàng • d) RR (Round Robin): – Preemtipve, – TT - kết thúc đươc, – Khả đối thoại với TT, – Ưu tiên thích đáng với TT dài: phân lớp phục vụ với t lớn t( l thờ ượn i g g tử ian ) 10% 10% 10% Bổ sung TT 10% 10% 10% 10% 10% 10% 10% 52 Chế độ nhiều dòng xếp hàng TT Ưu tiên cao TT Ưu tiên thấp Thực ế x ng ò D ền n ng ph 53 $5 - GỌI TIẾN TRÌNH • TT cạnh tranh tương tác với nhau, • Mối quan hệ tương tác: song song, • Xác lập quan hệ: – Lời gọi, – Cơ chế xử l{ kiện (Sẽ xét chương sau), • Các cách gọi: – Trong phạm vi hệ thống, – Giữa hệ thống: • RI (Remote Invocation), • RPC (Remote Procedure Call), – L{ thuyết chung: RMI (Remote Methods Invocation) 54 GỌI TIẾN TRÌNH • Sơ đồ gọi: – Khơng đối xứng, – Đối xứng • Kỹ thuật truyền tham số: – Theo giá trị, – Theo địa chỉ, – CR (Call by Copy/Restore) 55 GỌI TIẾN TRÌNH • Thơng tin tối thiểu để lưu khơi phục TT: – Nội dung ghi, – Địa lệnh, – Vùng nhớ RAM liên quan, – Vùng nhớ phục vụ hệ thống, – Các kiện chưa xử l{ • Phân biệt sơ đồ gọi đối xứng đệ quy 56 $6 - NGẮT XỬ LÝ NGẮT TT bị ngắt – Cơ chế Sự kiện Ngắt: từ MT hệ III, – IBM 360/370 – loại kiện, – IBM PC – 256 loại kiện n ệ ki t) n ự e S v (E TT xử lý ngắt 6.1 Định nghĩa ngắt (Interrupt): 57 6.2 PHÂN LOẠI NGẮT • Ngắt ngắt ngoài, Sự kiện Addr Decode Ngắt ALU – Ngắt trong: /0, tràn ô, – Ngắt ngoài: I/O Int, Timer, • Ngắt chắn không chắn được: – Chắn được: i/o Int, – Khơng được: Timer Int • Ngắt cứng ngắt mềm 58 6.3 XỬ LÝ NGẮT Mức xử lý I TT bị ngắt n ệ i k t) ự S ve n (E TT xử lý ngắt Mức xử lý II 59 CT CT xử lý ngắt Ca ll TT bị ngắt CT Ret CT Cơ chế CT Sự ki ệ n CT xử lý kiện Iret hụ p i ô Kh c Cơ chế xử lý ngắt 60 6.4 - Xử lý ngắt IBM PC • • • • Ngắt Pointer (4 bytes), Véc tơ ngắt = {Pointers} (1 KB), Khối nhớ xử lý ngắt, Nét đặc biệt: – – – – – – ngắt | Pointer Bảng tham số (Int 11, 1E, 41, ), Ngắt KT CT – Int 20, Ngắt thường trú CT Int 27, Ngắt R/W đĩa theo địa tuyệt đối – Int 25, 26, ngắt tương ứng với việc bấm phím (Int 05, 1B), Ngăt OS mơ xử lý kiện (Int 21), Một số kiện: dành cho user tạo ngắt mềm Lập trình hướng kiện (EOP) 61 ... trong, – Phương pháp kiểm tra xác lập, – Kỹ thuật đèn báo $2 – CÁC GIẢI THUẬT ĐIỀU ĐỘ 2. 1 Phương pháp khố trong: • Ngun lý: – Mỗi tiến trình (TT) đặt tương ứng tài nguyên găng với biến G, – TT... tiến trình, – Mỗi TT có đoạn găng đầu, – tài nguyên găng với khả phục vụ:1, – Các tiến trình lặp vơ hạn • Tránh nhầm lẫn khái niệm: – Sơ đồ nguyên lý: nêu { tưởng chung, – Giải thuật điều độ: sơ... tích cực Nguyên nhân: Mỗi TT phải tự đưa vào đoạn găng 20 2. 3 KỸ THUẬT ĐÈN BÁO • Dijsktra đề xuất 19 72 • Đề xuất: – Mỗi tài nguyên găng đặt tương ứng với biến nguyên đặc biệt S (Semaphore), – Ban