Xem mẫu

  1. TIẾ TRÌN N H ThS. Nguyễn Lê Minh Khoa CNTT, ĐH Giao thông vận tải Email: nlminh@utc2.edu.vn
  2. NỘI • Tiến trình là gì?DUNG • Trạng thái của tiến trình • Khối điều khiển tiến trình • (PCB) • Thao tác trên tiến trình • Điều phối (lập lịch) tiến trình Truyền thông liên tiến trình 2
  3. TIẾN TRÌNH LÀ • Tiến trình GÌ? là chương trình đang được thực • hiện Được xem là đơn vị làm trong cá Hệđiều việc c • hành Chương • Chương trình trìnhvs. Tiến trình• Thực thể tĩnh • Không sở hữu tài nguyên cụ thể • Tiến trình • Thực thể động • Được cấp một số tài nguyên (memory, CPU Registers) để chứa dữ liệu và thực hiện lệnh 3
  4. TIẾN TRÌNH LÀ GÌ?hiện tại của tiến trình được thể • Các hoạt động qua hiện bộ đếm chương trình (program vànội dun cá thanh ghi (registers củ bộ xửlý counter) g c ) a 4
  5. PROCESS IN MEMORY • Text section (Đoạn mã lệnh) • Chứa mã lệnh của chương trình (compiled • program code) Data section (Đoạn dữ liệu) • Chứa các biến toàn cục (global variables) và • biến static • Khởi tạo trước khi thực thi hàm main Heap Dành cho cấp phát bộ nhớ động • (dynamic memory allocation) • Được quản lý thông qua các hàm: new, Figure credit: Abraham Silberschatz, Greg Gagne, and Peter Baer Galvin, "Operating System Concepts, Ninth 5
  6. Figure credit: https://cg2010studio.wordpress.com/2011/06/26/process-in- 6
  7. TRẠNG THÁI CỦA TIẾN TRÌNH • Khi thực hiện, trạng thái của tiến trình thay • đổi Trạng thái của tiến trình được xác định bằng • hoạt • New động (Khởi hiện tạo)của thời – tiến nótrình đang được khởi tạo • Ready (Sẵn sàng) – tiến trình đang chờ được cấp Tiến trình có thể nhận 1 trong 5 trạng thái CPU để sau: • thực thi lệnh của mình • Running (Thực hiện) – các câu lệnh của tiến trình đang • được thực hiện Waiting (Chờ đợi) – tiến trình tạm dừng để chờ 7
  8. Figure credit: Abraham Silberschatz, Greg Gagne, and Peter Baer Galvin, "Operating System Concepts, Ninth Edition ", Chapter 3 8
  9. KHỐI ĐIỀU KHIỂN TIẾN TRÌNH • Process Control Block • (PCB) Cấu trúc tin chophépxá định duy nhất một tiến thôngtrình c Figure credit: Abraham Silberschatz, Greg Gagne, and Peter Baer Galvin, "Operating System Concepts, Ninth 9
  10. KHỐI ĐIỀU KHIỂN TRÌN TIẾN • Các thông tin trong H PCB • Process state (Trạng thái của tiến trình) • Program counter (Bộ đếm chương • trình) • CPU registers (Các thanh ghi) phối tiến CPU scheduling • Mức độ ưu tiêninformation của tiến trình,(Thông trình) vị trí trong hàng đợi, … • tin điều management information (Thông tin về bộ Memory nhớ của • tiến trình) • Thời gian sử dụng CPU, giới hạn thời gian • Accounting information (thông tin thống kê): I/O status information • Danh sách các thiết bị vào/ra được cấp phát cho tiến trình, các file đang mở 10
  11. Figure credit : http://www.technologyuk.net/computing/operating_systems/process_management.shtml 11
  12. THAO TRÊ TIẾ TRÌN • TạoTÁC mới tiến N N H • trình Kếtthúc tiến trình 12
  13. TẠO MỚI TIẾN • Khi tiến TRÌNH trình mới được đưa vào hệ thống, Hệ điều hành • Gántạo số ra định danh cho tiến trình được tạo mới và tạo • một ô trong bảng tiến trình • Tạo không gian nhớ cho tiến trình và PCB • Khởi tạoPCB Liên kết PCBcủa tiến trình vào danhsác quảnlý các h • Tiến trình được tạo ra khi • Khởi tạo hệ thống (OS is • boosted) • Tiến trình con Tiến trình do người dùng tạo 13
  14. TIẾN TRÌNH • Một tiến trìnhCON có thể tạo ra nhiều tiến mới cùn trình g hoạt động • Tiến trình tạo: tiến trình cha (parent • process) • • Tiến trình được tạo: tiến trình con (children) Cây tiến trình (Tree of process) Phân phối tài nguyên • Tiến trình con lấy tài nguyên từ hệ điều • hành ••Tiến Tiếntrình trìnhcha contiếp tụcnguyên lấy tài thực hiện đồngtrình từ tiến thời với tiến trình con cha • Tiến trình • Một chatàiđợi phần tiến trình con kết thúc nguyên 14
  15. KẾT THÚC TIẾN • Kết thúcTRÌNH bình thường: yêu cầu kết thúc mình HDH • bằng cách gọi lời gọi hệ thống exit() • Bị tiến trình cha kết thúc Bị• kết thúc: Do các lỗi • Yêu cầu nhiều bộ nhớ hơn so với số hệ có lượng thống • thể cung cấp • Thực hiệntrịlâu Do quản hệ hơn thời thống gian hoặc hệgiới điềuhạn hành kết thúc 15
  16. ĐIỀU PHỐI TIẾN TRÌNH • Mục tiêu • Các hàng đợi điều phối queues • (Scheduling Bộđiều phối (Schedule ) r) 16
  17. ĐIỀU PHỐI TRÌN TIẾN • Thuật ngữ: Process H • scheduling • Còn gọi là lập lịch tiến trình Mục • Sửtiêu: dụng tối đa thời gian CPU • Người dùng có thể tương tác tiến trình với • Bộđiều phối tiến trình (Process lựa chọn một tiến trình để thực scheduler) • hiện Trong hệ thống một processor • Các tiến trình khác phải chờ tới khi CPU tự• Chỉ do có 1 tiến trình được thực 17
  18. CÁC HÀNG ĐỢI ĐIỀU • Các PHỐI tiến trình chưa được phân phối sử dụng CPU sẽ • được đưa vào hàng đợi điều phối (Scheduling Hệ thống • Job có nhiều queue: hàng hàng đợi dànhđợi chodành tất cảcho các các tiến tiến trình trong trình • hệ thống Ready queue: bao gồm các tiến trình đang ở trạng • thái sẵn sàng Device queues: hàng đợi dành cho các tiến trình đang chờ đợi thiết bị vào/ra • Mỗi thiết bị có hàng đợi riêng biệt 18
  19. Figure credit: Abraham Silberschatz, Greg Gagne, and Peter Baer Galvin, "Operating System Concepts, Ninth 19
  20. CÁC HÀNG ĐỢI PHỐ ĐIỀU • Trong suốt thời I chuyể tồn tại tiến trình di giữ gian cá hàn đợi n a c g 20
nguon tai.lieu . vn