intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Hệ điều hành - Chương 2: Quản lý tiến trình

Chia sẻ: Cvcxbv Cvcxbv | Ngày: | Loại File: PDF | Số trang:85

224
lượt xem
48
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Nội dung chính của bài giảng Hệ điều hành Chương 2 Quản lý tiến trình nhằm trả lời cho câu hỏi Vì sao muốn xử lý đồng thời nhiều công việc trên máy tính? Việc chuyển trạng thái hệ thống tính toán phải dựa vào một sự kiện phát sinh trong hệ thống gọi là hiện tượng ngắt.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Hệ điều hành - Chương 2: Quản lý tiến trình

  1. CHƯƠNG 2 Quản lý tiến trình
  2. 1. TỔNG QUAN VỀ TIẾN TRÌNH
  3.  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 3
  4.  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ù 4
  5. Xöû lyù ñoàng haønh, nhöõng khoù khaên ? Excel - Taøi nguyeân giôùi haïn, öùng duïng Visual C++ CDplayer “voâ haïn” Winword - Nhieàu hoaït ñoäng ñan xen ??? Phaân chia taøi nguyeân ? ??? Chia seû taøi nguyeân ? ??? Baûo veä? HÑH : “Giaûi quyeát nhieàu coâng vieäc ñoàng thôøi, ñaâu coù deã !” 5
  6. Giaûi phaùp Winword -“Chia ñeå trò”, coâ laäp caùc hoaït ñoäng. - Moãi thôøi ñieåm chæ giaûi CDPlayer quyeát 1 yeâu caàu. Excel - Aûo hoaù taøi nguyeân: bieán ít thaønh nhieàu Visual C ++ HÑH: “Ai cuõng coù phaàn khi ñeán löôït maø!” 6
  7. 1. Tổng quan về tiến trình  Tr¹ng th¸i cña mét hÖ thèng tÝnh to¸n t¹i mét thêi ®iÓm ®-îc hiÓu lµ mét bé th«ng tin cña tÊt c¶ c¸c thµnh phÇn trong hÖ thèng tÝnh to¸n.  Mét d·y chuyÓn tr¹ng th¸i cña hÖ thèng tÝnh to¸n ký hiÖu lµ S0, S1,..Sn trong ®ã S0 lµ tr¹ng th¸i ®Çu, Sn lµ tr¹ng th¸i kÕt thóc th× ta gäi ®ã lµ mét tiÕn tr×nh. A S0 S1 S2 S3 S4 S5 . . . . Sn-1 Sn Sn+1 . . . . B  ViÖc chuyÓn tr¹ng th¸i hÖ thèng tÝnh to¸n ph¶i dùa vµo mét sù kiÖn ph¸t sinh trong hÖ thèng gäi lµ hiÖn t-îng ng¾t. 7
  8. Khái niệm tiến trình (process)  Tiến trình là một bộ phận của một chương trình đang thực hiện, đơn vị thực hiện tiến trình là processor.  Tiến trình sở hữu một con trỏ lệnh, một con trỏ stack, một tập các thanh ghi, một không gian địa chỉ trong bộ nhớ chính và tất cả các thông tin cần thiết khác để tiến trình có thể hoạt động được.  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] 8
  9. Khái niệm khác  Saltzer: Tiến trình là một chương trình do một processor logic thực hiện.  Horning & Rendell: Tiến trình là một quá trình chuyển từ trạng thái này sang trạng thái khác dưới tác động của hàm hành động, xuất phát từ một trạng thái ban đầu nào đó. 9
  10. Các loại tiến trình  Có thể chia thành hai loại: tiến trình tuần tự (MS_DOS) và tiến trình song song (uniprocessor và multiprocessor)  Tiến trình tuần tự là các tiến trình mà điểm khởi tạo của nó là điểm kết thúc của tiến trình trước đó.  Tiến trình song song là các tiến trình mà điểm khởi tạo của tiến trình này nằm ở thân của các tiến trình khác: BEGIN A END B t Begin 10
  11. Ph©n lo¹i tiÕn tr×nh song song A a A a A A a I B b B b B B b b C c C c C C c c I Z z Z z Z Z z z Độc lập Quan hệ Đồng mức Phân thông cấp tin 11
  12. P1 P2 P3 Time a. Trong hệ thống uniprocessor P1 P2 P3 Time b. Trong hệ thống Multiprocessor Sự thực hiện đồng thời của các tiến trình trong hệ thống uniprocessor (a) và hệ thống multiprocessor (b). 12
  13. Các loại tiến trình Nếu nhìn ở góc độ người dùng thì có 2 loại tiến trình:  Tiến trình của hệ điều hành: Được chạy ở chế độ đặc quyền và được truy xuất đến các vùng dữ liệu được bảo vệ của hệ thống.  Tiến trình của chương trình ứng dụng: Chạy ở chế độ không đặc quyền và không được truy xuất đến các dữ liệu được bảo vệ một cách trực tiếp mà phải thông qua lời gọi hệ thống. 13
  14. Mô hình tiến trình  Về nguyên tắc, hệ thống phải có nhiều processor, mỗi processor có nhiệm vụ thực hiện một chương trình.  Tuy nhiên, mong muốn là thực hiện sự đa chương trên các hệ thống chỉ có một processor. Tức là, có thể có nhiều chương trình hoạt động đồng thời (concurrence)  Sử dụng mô hình tiến trình để tạo ra sự song song giả hay tạo ra các processor logic từ processor vật lý. 14
  15. Mô hình tiến trình  ChÕ ®é ®a ch-¬ng tr×nh ph©n chia thêi gian mçi ng-êi sö dông cã c¶m gi¸c nh- chØ cã mét m×nh m×nh lµ ng-êi duy nhÊt sö dông toµn bé hÖ thèng.  TÊt c¶ c¸c hÖ ®iÒu hµnh thùc hiÖn song song ®Òu do mét processor cña hÖ thèng – processor vËt lý ®iÒu khiÓn.  Ng-êi sö dông ®¸nh gi¸ ho¹t ®éng processor trªn c¬ së quan s¸t tiÕn tr×nh cña m×nh thùc hiÖn -> Processor ng-êi sö dông quan s¸t vµ ®¸nh gi¸: processor l«gic  Processor logic g¾n víi tiÕn tr×nh. 15
  16. Processor l« gÝc vµ Processor vËt lý  ChÕ ®é xö lý kÕ tiÕp ®¬n ch-¬ng tr×nh:  Mét tiÕn tr×nh ®-îc thùc hiÖn xong míi khëi t¹o vµ thùc hiÖn tiÕn tr×nh kh¸c -> cã thÓ ®ång nhÊt processor logic víi processor vËt lý.  KÐm hiÖu qu¶ v× tµi nguyªn processor bÞ l·ng phÝ nhiÒu.  N©ng cao hiÖu qu¶ khai th¸c cña toµn hÖ thèng nãi chung:  Ph©n chia bé nhí  Ph©n phèi thêi gian cña processor cho nhiÒu tiÕn tr×nh ®ång thêi tån t¹i.  §èi víi mçi tiÕn tr×nh, tèc ®é thùc hiÖn sÏ bÞ gi¶m :  Thêi gian truy nhËp bé nhí t¨ng  Kh«ng ®-îc quyÒn sö dông processor liªn tôc.  §èi víi ng-êi sö dông: thay ®æi t©m lý khai th¸c hÖ thèng. 16
  17. C¸c vÊn ®Ò cÇn ph¶i gi¶i quyÕt ®èi víi c¸c hÖ thèng nhiÒu processor a)Sè l-îng processor logic nªn t¹o ra lµ bao nhiªu? b) §é dµi kho¶ng thêi gian g¾n liªn tôc processor vËt lý cho mét processor l«gic lµ bao nhiªu th× hîp lý? c)Sau khi mét processor l«gic hÕt quyÒn sö dông processor vËt lý th× cÇn chän tiÕn tr×nh nµo ®Ó ph©n phèi processor vËt lý? C¸c c¸ch gi¶i quyÕt kh¸c nhau ba vÊn ®Ò nªu trªn t¹o ra c¸c chiÕn l-îc ®iÒu ®é tiÕn tr×nh kh¸c nhau. 17
  18. Mô hình tiến trình  Hệ điều hành sẽ chia các chương trình thành các tiến trình, khởi tạo, đưa vào hệ thống và cấp phát đầy đủ tài nguyên (trừ processor) cho tiến trình và đưa các tiến trình sang trạng thái sẵn sàng.  Hệ điều hành cấp processor cho một tiến trình trong số các tiến trình ở trạng thái sẵn sàng, sau một khoảng thời gian hệ điều hành thu hồi processor của tiến trình này để cấp cho một tiến trình sẵn sàng khác.  Khoảng thời gian đó là rất nhỏ tạo ra cảm giác các tiến trình đều sở hữu processor  song song giả 18
  19. Mô hình tiến trình  Ví dụ: Giả sử trong hệ thống có 3 tiến trình sẵn sàng P1, P2, P3 thì quá trình chuyển processor giữa 3 tiến trình này có thể minh họa như sau: Thời điểm Trạng thái các tiến trình t1 P1: được cấp processor t2 P1: bị thu hồi processor (khi chưa kết thúc) P3: được cấp processor t3 P3: bị thu hồi processor (khi chưa kết thúc) P1: được cấp processor t4 P1: kết thúc và trả lại processor P2: được cấp processor t5 P2: kết thúc và trả lại processor P3: được cấp processor t6 P3: kết thúc và trả lại processor 19
  20. Mô hình tiến trình  Ví dụ: Hình sau đây minh họa quá trình thực hiện của 3 tiến trình P1, P2, P3 ở trên: P1 P2 P3 Time t1 t2 t3 t4 t5 t6 Sự hoạt động “song song” của các tiến trình P1, P2, P3 uniprocessor 20
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2