Bài Giảng Hệ Điều Hành-Chương 2: Quá trình
lượt xem 20
download
HĐH thực hiện nhiều kiểu chương trình: Hệ thống bó – jobs Các hệ thống chia sẻ thời gian – các chương trình người dùng/ các nhiệm vụ Công việc (job) = quá trình (process) Quá trình là một chương trình trong sự thực hiện; sự thực hiện quá trình phải tiến triển theo kiểu cách tuần tự Một quá trình bao gồm: Bộ đếm chương trình Stack Phần dữ liệu
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 2: Quá trình
- CHƯƠNG 3: QUÁ TRÌNH 3:
- NỘI DUNG Khái niệm quá trình Lập lịch biểu quá trình Các hoạt động trên quá trình Hợp tác các quá trình Liên lạc giữa các quá trình Liên lạc trong các hệ Client-Server Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7th Edition, Feb 7, 2006 3.2
- KHÁI NIỆM QUÁ TRÌNH HĐH thực hiện nhiều kiểu chương trình: Hệ thống bó – jobs Các hệ thống chia sẻ thời gian – các chương trình người dùng/ các nhiệm vụ Công việc (job) = quá trình (process) Quá trình là một chương trình trong sự thực hiện; sự thực hiện quá trình phải tiến triển theo kiểu cách tuần tự Một quá trình bao gồm: Bộ đếm chương trình Stack Phần dữ liệu Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7th Edition, Feb 7, 2006 3.3
- Process in Memory Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7th Edition, Feb 7, 2006 3.4
- TRẠNG THÁI QUÁ TRÌNH Khi quá trình thực hiện nó thay đổi trạng thái new: Quá trình đang được khởi tạo running: các chỉ thị đang được thực hiện waiting: Quá trình đang chờ đợi một biến cố xảy ra ready: Quá trình đang chờ được cấp processor terminated: Quá trình kết thúc sự thực hiện Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7th Edition, Feb 7, 2006 3.5
- BIỂU ĐỒ TRẠNG THÁI QUÁ TRÌNH Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7th Edition, Feb 7, 2006 3.6
- KHỐI ĐIỀU KHIỂN QUÁ TRÌNH Process Control Block (PCB) Thông tin kết hợp với mỗi quá trình Trạng thái quá trình Bộ đếm chương trình Các thanh ghi CPU Thông tin lập lịch biểu CPU Thông tin quản trị bộ nhớ Thông tin kiểm toán Thông tin trạng thái I/O Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7th Edition, Feb 7, 2006 3.7
- KHỐI ĐIỀU KHIỂN QUÁ TRÌNH (PCB) Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7th Edition, Feb 7, 2006 3.8
- SỰ CHUYỂN CPU QUA LẠI GIỮA CÁC QUÁ TRÌNH Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7th Edition, Feb 7, 2006 3.9
- CÁC HÀNG ĐỢI LẬP LỊCH BIỂU QUÁ TRÌNH Hàng đợi công việc (Job Queue) – tập tất cả các quá trình trong hệ thống Hàng đợi sẵn sàng (Ready Queue) – tập các quá trình nằm trong bộ nhớ sẵn sàng và chờ đợi thực hiện Các hàng đợi thiết bị (Device Queues) – tập các quá trình chờ đợi một thiết bị I/O Các quá trình di trú giữa các hàng đợi Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7th Edition, Feb 7, 2006 3.10
- HÀNG ĐỢI SẴN SÀNG & CÁC HÀNG ĐỢI THIẾT BỊ I/O Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7th Edition, Feb 7, 2006 3.11
- SƠ ĐỒ LẬP LỊCH BIỂU QUÁ TRÌNH Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7th Edition, Feb 7, 2006 3.12
- CÁC BỘ LẬP LỊCH BIỂU Bộ lập lịch biểu dài hạn (Long-term scheduler / job scheduler) – chọn các quá trình để chuyển sang hàng đợi sẵn sàng Bộ lập lịch biểu ngắn hạn (Short-term scheduler / CPU scheduler) – chọn quá trình sẽ được thực hiện kế tiếp và cấp phát CPU cho nó Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7th Edition, Feb 7, 2006 3.13
- BỔ XUNG LẬP LỊCH BIỂU TRUNG HẠN Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7th Edition, Feb 7, 2006 3.14
- CÁC BỘ LẬP LỊCH BIỂU (Cont.) Bộ lập lịch biểu ngắn hạn được viện dẫn thường xuyên (ms) ⇒ nhanh Bộ lập lịch biểu dài hạn được viện dẫn ít thường xuyên (seconds, minutes) ⇒ có thể chậm Bộ lập lịch biểu dài hạn điều khiển bậc đa chương Các quá trình được phân thành: Quá trình I/O-bound – tiêu nhiều thời gian cho hoạt động I/O hơn cho tính toán, gồm nhiều CPU bursts ngắn Quá trình CPU-bound – tiêu nhiều thời gian hơn cho tính toán; gồm một số ít CPU bursts rất dài Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7th Edition, Feb 7, 2006 3.15
- CHUYỂN NGỮ CẢNH Khi CPU chuyển cho quá trình khác, hệ thống phải lưu lại trạng thái của quá trình cũ và nạp trạng thái của quá trình mới Thời gian chuyển ngữ cảnh là một “phí”; hệ thống không làm việc “hữu ích” khi chuyển ngữ cảnh Thời gian chuyển ngữ cảnh phụ thuộc vào hỗ trợ phần cứng Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7th Edition, Feb 7, 2006 3.16
- TẠO QUÁ TRÌNH Quá trình cha tạo ra các quá trình con, các quá trình con lại có thể tạo ra các quá trình con của nó, tạo ra một cây các quá trình Chia sẻ tài nguyên Cha và con chia sẻ tất cả các tài nguyên Các con chia sẻ một tập con các tài nguyên của cha Cha và con không chia sẻ tài nguyên Sự thực hiện Cha và các con thực hiện đồng thời Cha chờ đến tận khi con kết thúc Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7th Edition, Feb 7, 2006 3.17
- TẠO QUÁ TRÌNH (Cont.) Không gian địa chỉ Con sao lại của cha Con có một chương trình được nạp vào trong nó Ví dụ: UNIX Fork: lời gọi hệ thống tạo quá trình mới Exec: lời gọi hệ thống được dùng sau fork để thay thế không gian bộ nhớ của quá trình với chương trình mới Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7th Edition, Feb 7, 2006 3.18
- TẠO QUÁ TRÌNH Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7th Edition, Feb 7, 2006 3.19
- CHƯƠNG TRÌNH C PHÂN NHÁNH QUÁ TRÌNH int main() { pid_t pid; /* fork another process */ pid = fork(); if (pid < 0) { /* error occurred */ fprintf(stderr, "Fork Failed"); exit(-1); } else if (pid == 0) { /* child process */ execlp("/bin/ls", "ls", NULL); } else { /* parent process */ /* parent will wait for the child to complete */ wait (NULL); printf ("Child Complete"); exit(0); } } Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7th Edition, Feb 7, 2006 3.20
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài tập pascal : Tóm tắt lý thuyết và bài tập part 2
5 p | 378 | 136
-
Giáo trình kỹ thuật lập trình C#
219 p | 364 | 99
-
Bài giảng Nguyên lý hệ điều hành: Chương 2 - GV. Đặng Quang Hiển
118 p | 283 | 44
-
Tài liệu Nguyên lí hệ điều hành - ĐH Hàng Hải Việt Nam
54 p | 147 | 28
-
Lập trình mạng trong windows - Chương 2
37 p | 139 | 26
-
Bài giảng Tin học đại cương: Bài 2 - ĐH Bách khoa Hà Nội
42 p | 160 | 18
-
Bài giảng Hệ điều hành - Chương 2: Quản lý tiến trình (2013)
57 p | 103 | 15
-
BÀI GIẢNG TIN HỌC ỨNG DỤNG - CHƯƠNG 2
66 p | 86 | 9
-
Bài giảng An toàn hệ điều hành: Phần 2
35 p | 38 | 8
-
Bài giảng Hệ điều hành: Chương 2 - Phan Xuân Huy
36 p | 65 | 7
-
Bài giảng Hệ điều hành Linux căn bản: Chương 2 - Lê Ngọc Sơn
32 p | 94 | 7
-
Bài giảng Hệ điều hành: Chương 2 - Thoại Nam, Lê Ngọc Minh
34 p | 44 | 7
-
Bài giảng Hệ điều hành UNIX-Linux: Chương 2 - Nguyễn Trí Thành
27 p | 101 | 6
-
Bài giảng Kiến trúc máy tính: Chương 2 - Trường Đại học Công nghiệp TP.HCM
55 p | 7 | 6
-
Bài giảng Tin học ứng dụng - Chương 2: Soạn thảo văn bản
19 p | 67 | 3
-
Hệ điều hành - các dịch vụ hệ điều hành - Nguyễn Phú Trường - 2
0 p | 78 | 3
-
Bài giảng Hệ điều hành Unix-Linux: Chương 2 - Đặng Thu Hiền
24 p | 73 | 2
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