Bài giảng Hệ điều hành: Chương 4 - Phan Xuân Huy
lượt xem 9
download
Bài giảng "Hệ điều hành - Chương 4: Quản lý tiến trình" cung cấp cho người học các kiến thức về: Mô hình tiến trình, trạng thái tiến trình, thông tin quản lý tiến trình, quá trình điều phối tiến trình, các thuật toán điều phối tiến trình. Mời các bạn cùng tham khảo nội dung chi tiết.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Hệ điều hành: Chương 4 - Phan Xuân Huy
- Chöông 4: Quaûn lyù tieán trình Moâ hình Tieán trình Traïng thaùi tieán trình Thoâng tin quaûn lyù tieán trình Quaù trình ñieàu phoái tieán trình Caùc thuaät toaùn ñieàu phoái 10/20/2007 Trần Hạnh Nhi 1
- Khaùi nieäm : Ña nhieäm vaø ña chöông ??? Vì sao muoán xöû lyù ñoàng thôøi nhieàu coâng vieäc treân maùy tính ? Job 1 CPU IO CPU IO CPU Job 1 CPU IO CPU IO Job 2 CPU IO CPU CPU Xöû lyù ñoàng thôøi ñeå taêng hieäu suaát söû duïng CPU 10/20/2007 Trần Hạnh Nhi 2
- Khaùi nieäm : Ña nhieäm vaø ña chöông ??? Vì sao muoán xöû lyù ñoàng thôøi nhieàu coâng vieäc treân maùy tính ? Job : kq = a*b + c*d; Xöù lyù tuaàn töï Xöûù lyù ñoàng haønh CPU #1 CPU #1 CPU #2 x=a*b 1 x=a*b y=c*d y = c *d 2 kq = x+y kq = x+y 3 Xöû lyù ñoàng thôøi ñeå taêng toác ñoä xöû lyù 10/20/2007 Trần Hạnh Nhi 3
- Ña nhieäm vaø ña chöông Multitasking (ña nhieäm) : cho pheùp nhieàu taùc vuï/ coâng vieäc ñöôïc xöû lyù ñoàng thôøi Ngöôøi duøng luoân mong muoán 1 HÑH ña nhieäm Nhöng: Maùy tính thöôøng chæ coù 1 CPU? Multiprogramming (ña chöông) : kyõ thuaät cho pheùp nhieàu chöông trình ñöôïc thöïc hieän ñoàng thôøi (treân 1 CPU) Giaû laäp nhieàu CPU aûo töø 1 CPU thaät ñeå cho pheùp thi haønh nhieàu chöông trình ñoàng thôøi. AÛo hoaù baèng caùch naøo ? Xaây döïng caùc thuaät toaùn ñeå luaân chuyeån CPU giöõa caùc chöông trình öùng duïng. 10/20/2007 Trần Hạnh Nhi 4
- Xöû lyù ñoàng haønh, nhöõng khoù khaên ? - Taøi nguyeân giôùi haïn, öùng duïng Excel “voâ haïn” Visual C++ - Nhieàu hoaït ñoäng CDplayer ñan xen Winword ??? Phaân chia taøi nguyeân ? ??? Chia seû taøi nguyeân ? HÑH : “ Giaûi quyeát nhieàu coâng vieäc ñoàng thôøi, ??? Baûo veä? ñaâu coù deã ! “ 10/20/2007 Trần Hạnh Nhi 5
- Giaûi phaùp -“Chia ñeå trò”, coâ Winword laäp caùc hoaït ñoäng. - Moãi thôøi ñieåm CDPlayer chæ giaûi quyeát 1 Excel yeâu caàu. - Aûo hoaù taøi Visual C ++ nguyeân : bieán ít thaønh nhieàu HÑH : “ Ai cuõng coù phaàn khi ñeán löôït maø ! ” 10/20/2007 Trần Hạnh Nhi 6
- Giaûi phaùp CPU 10/20/2007 Trần Hạnh Nhi 7
- Khaùi nieäm tieán trình (Process) Tieán trình laø moät chöông trình ñang trong quaù trình thöïc hieän Moãi tieán trình sôû höõu Moät CPU (aûo) rieâng Moät khoâng gian nhôù rieâng Chieám giöõ 1 soá taøi nguyeân cuûa heä thoáng Vd: Moät chöông trình Word coù theå ñöôïc chaïy 2 laàn seõ taïo ra 2 tieán trình khaùc nhau: Microsoft Word – [Bai tap1.doc] Microsoft Word – [Bai tap2.doc] 10/20/2007 Trần Hạnh Nhi 8
- Hai phaàn cuûa tieán trình Doøng xöû lyù P1 P2 int a; int a; Khoâng gian ñòa chæ 10/20/2007 Trần Hạnh Nhi 9
- Traïng thaùi tieán trình ? Taïi 1 thôøi ñieåm, tieán trình ôû moät trong caùc traïng thaùi sau: Nhaän CPU ready running ☺ Rs ☺ Rs Traû CPU ☺ CPU CPU blocked Chôø R Nhaän R Rs CPU 10/20/2007 Trần Hạnh Nhi 10
- Khoái quaûn lyù tieán trình - PCB (Process Control Block) Định danh (Process ID) pid Trạng thaùi tiến trình State Ngữ cảnh tiến trình Trạng thaùi CPU (State, details) Bộ xử lyù (cho maùy nhiều CPU) Context Bộ nhớ chính (IP, Mem, Files…) Taøi nguyeân sử dụng/tạo lập Thoâng tin giao tiếp Relatives Tiến trình cha, tiến trình con ( Dad, children) Độ ưu tieâên Scheduling statistic Thoâng tin thống keâ Process control Block PCB 10/20/2007 Trần Hạnh Nhi 11
- Ví duï: Khoái quaûn lyù tieán trình cuûa HÑH MachOS typedef struct machpcb { char mpcb_frame[REGOFF]; struct regs mpcb_regs; // user's saved registers struct rwindow mpcb_wbuf[MAXWIN]; //user window save buffer char *mpcb_spbuf[MAXWIN]; //sp's for each wbuf int mpcb_wbcnt; //number of saved windows in pcb_wbuf struct v9_fpu *mpcb_fpu; // fpu state struct fq mpcb_fpu_q[MAXFPQ]; // fpu exception queue int mpcb_flags; // various state flags int mpcb_wocnt; // window overflow count int mpcb_wucnt; // window underflow count kthread_t *mpcb_thread; // associated thread } machpcb_t; 10/20/2007 Trần Hạnh Nhi 12
- Caùc thao taùc treân tieán trình Taïo laäp tieán trình Keát thuùc tieán trình Thay ñoåi traïng thaùi tieán trình : Assign() Block() Awake() Suspend() Resume() 10/20/2007 Trần Hạnh Nhi 13
- Taïo laäp tieán trình Caùc tình huoáng : Khôûi ñoäng batch job User logs on Kích hoaït 1 service (print...) Process goïi haøm taïo moät tieán trình khaùc Caùc tieán trình coù theå taïo tieán trình con, hình thaønh caây tieán trình trong heä thoáng Caùc tieán trình môùi ñöôïc taïo coù theå thöøa höôûng taøi nguyeân töø cha, hay ñöôïc caáp taøi nguyeân môùi 10/20/2007 Trần Hạnh Nhi 14
- Keát thuùc tieán trình Tình huoáng : Tieán trình xöû lyù xong leänh cuoái cuøng hay goïi exit () Keát thuùc Batch job , Halt instruction User logs off Do loãi chöông trình Moät tieán trình coù theå keát thuùc 1 tieán trình khaùc neáu coù ID (ñònh danh) cuûa tieán trình kia. Ví duï: kill –-s SIGKILL 1234: huyû tieán trình coù ID laø 1234 10/20/2007 Trần Hạnh Nhi 15
- Moâ hình ña tieán trình (MultiProcesses) Heä thoáng laø moät taäp caùc tieán trình hoaït ñoäng ñoàng thôøi Caùc tieán trình ñoäc laäp vôùi nhau => khoâng coù söï trao ñoåi thoâng tin hieån nhieân.. Excel winword Visual C CDplayer OS 10/20/2007 Trần Hạnh Nhi 16
- Ví duï moâ hình ña tieán trình Giôø thi lyù thuyeát moân Heä Ñieàu haønh Moãi sinh vieân laø moät tieán trình : Cuøng laøm baøi => Hoaït ñoäng ñoàng haønh Coù baøi thi , buùt, giaáy…rieâng => Taøi nguyeân rieâng bieät Ñoäc laäp => Khoâng trao ñoåi (veà nguyeân taéc) Thöïc haønh moân Heä Ñieàu haønh 2 sinh vieân/nhoùm Hôïp taùc ñoàng haønh Nhu caàu trao ñoåi Duøng taøi nguyeân chung 10/20/2007 Trần Hạnh Nhi 17
- Moâ hình ña tieåu trình (MultiThreads) Nhieàu tình huoáng caàn coù nhieàu doøng xöû lyù ñoàng thôøi cuøng hoaït ñoäng trong moät khoâng gian ñòa chæ => cuøng chia seû taøi nguyeân (server, OS, caùc chöông trình tính toaùn song song : nhaân ma traän…) alta vista Khaùi nieäm môùi : tieåu trình (thread) 10/20/2007 Trần Hạnh Nhi 18
- Ví duï Moâ hình ña tieåu trình Thöïc haønh moân Heä Ñieàu haønh Moãi nhoùm 2 sinh vieân laø moät tieán trình : Moãi sinh vieân laø moät tieåu trình Cuøng laøm baøi => Hoaït ñoäng ñoàng haønh Coùù baøi thöïc haønh chung => Taøi nguyeân chung Trao ñoåi vôùi nhau 10/20/2007 Trần Hạnh Nhi 19
- Khaùc bieät giöõa Tieåu trình & Tieán trình Tieåu trình : 1 doøng xöû lyù Tieán trình : P1 1 khoâng gian ñòa chæ T2 T1 1 hoaëc nhieàu tieåu trình T Caùc tieán trình laø ñoäc laäp 3 Caùc tieåu trình trong cuøng 1 tieán trình khoâng coù söï baûo veä laãn nhau (caàn thieát ? ). int a; 10/20/2007 Trần Hạnh Nhi 20
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Hệ điều hành: Chương 1 - ThS. Hà Lê Hoài Thương
39 p | 182 | 33
-
Bài giảng Hệ điều hành - Chương 1: Giới thiệu hệ điều hành
32 p | 167 | 16
-
Bài giảng Hệ điều hành: Chương 9 - ĐH Bách khoa TP HCM
56 p | 116 | 13
-
Bài giảng Hệ điều hành: Chương 2 - Trần Công Án (ĐH Cần Thơ)
39 p | 136 | 11
-
Bài giảng Hệ điều hành - Chương 5: Quản lý vào ra
30 p | 165 | 10
-
Bài giảng Hệ điều hành: Chương 1 - Phan Xuân Huy
25 p | 143 | 9
-
Bài giảng Hệ điều hành: Chương 1C - Cấu trúc hệ điều hành
22 p | 133 | 9
-
Bài giảng Hệ điều hành: Chương 2 - Hà Duy An (ĐH Cần Thơ)
45 p | 106 | 9
-
Bài giảng Hệ điều hành: Chương 1 - Nguyễn Phan Trung
43 p | 122 | 9
-
Bài giảng Hệ điều hành: Chương 2 - ThS. Hà Lê Hoài Trung
20 p | 123 | 9
-
Bài giảng Hệ điều hành: Chương 2 - ThS. Phan Đình Duy
36 p | 79 | 7
-
Bài giảng Hệ điều hành: Chương 1 - TS. Ngô Hữu Dũng
60 p | 122 | 7
-
Bài giảng Hệ điều hành: Chương 1 - Đặng Minh Quân
23 p | 75 | 6
-
Bài giảng Hệ điều hành: Chương 1 - ThS. Huỳnh Triệu Vỹ
156 p | 78 | 5
-
Bài giảng Hệ điều hành - Chương 1: Tổng quan hệ điều hành (Lương Minh Huấn)
109 p | 46 | 5
-
Bài giảng Hệ điều hành: Chương 1 - ĐH Bách khoa TP Hồ Chí Minh
26 p | 119 | 5
-
Bài giảng Hệ điều hành: Chương 2 - ĐH Công nghệ thông tin
36 p | 68 | 3
-
Bài giảng Hệ điều hành - Chương 1: Mở đầu
13 p | 86 | 3
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn