1 / 49

Chương 2

Chương 2. KHÁI NiỆM QUÁ TRÌNH. Mục đích: Hiểu được sự hình thành nên quá trình trong hệ thống như thế nào. Hiều được qui luật chuyển đổi các trạng thái của quá trình Yêu cầu: Viết ra được các sơ đồ trạng thái của quá trình. Mục đích và yêu cầu. Quá trình (Process)

anais
Download Presentation

Chương 2

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Chương 2 KHÁI NiỆM QUÁ TRÌNH Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  2. Mục đích: Hiểu được sự hình thành nên quá trình trong hệ thống như thế nào. Hiều được qui luật chuyển đổi các trạng thái của quá trình Yêu cầu: Viết ra được các sơ đồ trạng thái của quá trình. Mục đích và yêu cầu Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  3. Quá trình (Process) Định thời process(CPU scheduling) Các tác vụ trên process(tạo và kết thúc process) Process hợp tác (Cooperating Process) Giao tiếp liên process Interprocess Communication (IPC) Nội dung Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  4. Os thực thi nhiều loại chương trinh khác nhau Batch system : thực hiện các job Time-sharing systems :thực hiện user programs or tasks Các thuật ngữ Job và process là tương tự hau Process một chương trình đang thực thi(executing proram), sự phát triền của process phải theo kiểu tuần tự. Một process bao gồm các phần Program counter (PC):– bộ đếm chương trình Stack : -ngăn xếp Data section:- đọan dữ liệu So sánh process và program Process ≈ active <> Passive ≈ Program I. Khái niệm quá trình(process) Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  5. Yêu cầu đối với Os Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  6. Mỗi process trong hệ thống được diễn tả bởi một PCB: I.2 Process Control Block (PCB) Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  7. Mỗi PCB PCB Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  8. CÁC BƯỚC NẠP PROCESS VÀO BỘ NHỚ Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  9. Loader Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  10. Mô hình hai trạng thái running not running, có thể được giữ trong hàng I.3 Các trạng thái của process Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  11. Mô hình 5 trạng thái (t.t) Khi process thực thi nó có thể thay đổi trạng thái (state) • New: process được khởi tạo • Running: process ở trong CPU các lệnh đang được thực hiện • Ready: process đang chờ đến lượt để được thực thi. • Blocked: process đang chờ một sự khiện nào đó xuất hiện • Exit: completed/error exit Chỉ có 1 process ở running trên mỗi procesor tại một thời điểm Có nhiều process ờ ready và blocked tại một thời điểm Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  12. Ví dụ về trạng thái của process Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  13. Các trạng thái của process(t.t) Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  14. Các trạng thái của process(t.t) Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  15. Các trạng thái của process(t.t) Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  16. Lưu đồ 7-trạng thái của process Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  17. Là cơ sở cho các hệ thống multiprogramming và Time Sharing Multiprogramming: Có nhiều process phải thực thi luân phiên nhau Cưc đại hiệu suất của CPU Time Sharing : Cho phép users tương tác khi program đang chạy Tối thiểu thời gian đáp ứng II. Định thời Process(process scheduling) Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  18. Các hàng đợi định thời Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  19. Hàng đợi Ready & I/O Device Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  20. Định thời Process Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  21. Các bộ định thời(schedulers) Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  22. Các bộ định thời(t.t) Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  23. Chuyển ngữ cảnh (context switch)(CPU chuyển giữa các process) Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  24. Chuyển ngữ cảnh (t.t) Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  25. Các bước chuyển ngữ cảnh Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  26. Chuyển ngữ cảnh xẩy ra khi nào Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  27. Các ví dụ về Interrupt Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  28. Medium Term Scheduling Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  29. Các process trong hệ thống có thể được thực thi đồng thời và chúng phải được tạo và xóa một cách năng động. vì vậy Os phải cung cấp cơ cấu để tạo (process creation) và kết thúc (process Termination) III. Các tác vụ lên process Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  30. III.1 Tạo process (process creation) Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  31. Mối quan hệ cha/con Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  32. Cây process trong UNIX Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  33. Mối quan hệ cha/con(t.t) Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  34. III.2 Kết thúc thực thi process (process Termination) Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  35. Kết thúc thực thi process(t.t) Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  36. Process độc lập (Independent process): không thể tác động hay chịu tác động bởi sự thực hiện của process khác. Process hợp tác (cooperating process): Có thể tác động hoặc chịu sự tác động bởi sự thực hiện của process khác. Vd: process này chia sẻ data với process kia IV. Các Process hợp tác Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  37. Ưu điểm: Chia sẻ thông tin -information sharing Tăng tốc độ tính toán - computation speed-up Mô-dun hóa -Modularity Sự tiện lợi – converience (vd user cùng thực hiệ soạn thảo, in ấn, biên dịch song song). Các process hợp tác (tiếp) Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  38. Mô hình cho các process hợp tác, quá trình sản xuất (producer process) tạo ra các thông tin để các quá trình tiêu thụ (consumer producer) sử dụng. Sự trao đổi thông tin thực hiện qua buffer Unbounded-buffer: giả thiết kích thước buffer vô hạn Bounded-buffer: thừa nhận có một kích thước buferr cố định Producer và consumer phải được đồng bộ họat động Consumer không thể sử dụng một data mà producer chưa kịp tạo ra Producer không được tạo thêm sản phẩm khi buffer đã đầy (bounded buffer) Hiện thực buffer Shared memory Interprocess communcation facility(IPC) Bài tóan Producer-Consumer Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  39. Ví dụ Shared Bounded-Buffer Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  40. Shared Bounded-Buffer(t.t) Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  41. Lả cơ chế để các process giao tiếp và đồng bộ các hành động của chúng mà không phải dùng chung resourcese Khả năng IPC cung cấp 2 họat động: send(message):- kích thước của message cố định hoặc biến đổi receive(massage) Nếu các quá trình P và Q muốn giao tiếp chúng cần phải: thiết lập một liên kết giao tiếp (communication link) giữa chúng trao đổi các message qua các họat động send/receive Sự thực hiện của communication link physical (vd shared memory, hardware bus) logical (vd : logical properties) V.Giao tiếp liên quá trình Interprocess Communication (IPC) Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  42. Hiện thực IPC? Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  43. Các quá trình phải xác định rõ tên của nhau: Send(P,message):- gửi 1 message tới quá trình P. Receiver(Q,message):- nhận 1 message từ quá trình Q Các đặc tính của communication link: Các liên kết được thiết lập tự động Mối liên kết được gắn với duy nhất một cặp process giao tiếp với nhau. Giữa mỗi cặp process tồn tại duy nhất 1 liên kết Liên kết thường là 2 chiều (bi-directional) hoặc có thể có 2 liên kết một chiều (undirectional) P to Q, Q to P. Direct Communication Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  44. Các message được gửi và nhận từ các mailbox (còn được gọi là port) Mỗi mailbox có duy nhất một id Các process chỉ có thể giao tiếp nếu chúng chia sẻ một mailbox Các đặc tính của communication link: Các liên kết được thiết lập chỉ khi nào process chia sẻ một mailbox chung. Một liên kết có thể được gắn với nhiều process Mỗi cặp process có thể chia sẻ một số communication link. Liên kết có thể là 2 chiều hoặc 1 chiều. Indirect Communication Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  45. Các họat động Tạo/xóa một mailbox Send(A,message)- gửi 1 message tới mailbox A Receiver(A,message)- nhận 1 message từ mailbox A Vấn đề Mailbox sharing: P1,P2 và P3 chia sẻ mailbox A. P1 gửi P2 và P3 nhận Process nào nhận đượ message? Indirect Communication (tiếp) Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  46. Giải pháp: 1 liên kết được gắn tối đa 2 process Cho phép tại 1 thời điểm chỉ 1 process thực hiện nhận message. Cho phép hệ thống tùy chọn process nhận. Process gửi được thông báo process nào nhận message. Các process khác nhận được 1 bản copy Indirect Communication (tiếp) Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  47. Message passing có thể là khóa (blocking) hoặc không khóa (non-blocking). Blocking được coi là đồng bộ (synchronous) Blocking send: process gởi bị khóa đến khi message được nhận bởi process nhận hoặc bởi mailbox Blocking receive: process nhận/mailbox khóa đến khi nhận xong message Non-blocking: được coi là không đồng bộ (asynchronous) Non-blocking send: process-gửi gửi message rồi lại tiếp tục không quan tâm tới message có được nhận hay không Non-blocking receive: process-nhận /mailbox nhận message đúng hoặc vô dụng. Sự đồng bộ hóa(Synchronization) Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  48. Bộ đệm(buffering) Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

  49. Miêu tả sư khác nhau giữa các bộ định thời ngắn, trung gian và dài. Miêu tả các hành động diễn ra chuyển ngữ cảnh giữa các quá trình bởi “Kernel” Câu hỏi và bài tập Khoa Công Nghệ Thông Tin – Đại Học Công Nghiệp TP Hồ Chi Minh

More Related