Bài giảng Hệ điều hành: Chương 3.1 - ThS. Nguyễn Thị Hải Bình

33 132 0
Bài giảng Hệ điều hành: Chương 3.1 - ThS. Nguyễn Thị Hải Bình

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Bài giảng cung cấp cho người học các kiến thức: Tiến trình là gì?; 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. Mời các bạn cùng tham khảo nội dung chi tiết.

TIẾN TRÌNH ThS Nguyễn Thị Hải Bình Khoa CNTT, ĐH Giao thông vận tải Email: calmseahn@gmail.com Website: calmseahn.weebly.com NỘI DUNG • Tiến trình gì? • Trạng thái tiến trình • Khối điều khiển tiến trình (PCB) • Thao tác 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 TIẾN TRÌNH LÀ GÌ? • Tiến trình chương trình thực • Được xem đơn vị làm việc Hệ điều hành • Chương trình vs Tiến trình • Chương trình • Thực thể tĩnh • Khơng sở hữu tài ngun cụ thể • Tiến trình • Thực thể động • Được cấp số tài nguyên (memory, CPU Registers) để chứa liệu thực lệnh TIẾN TRÌNH LÀ GÌ? • Các hoạt động tiến trình thể qua đếm chương trình (program counter) nội dung ghi (registers) xử lý PROCESS IN MEMORY • Text section (Đoạn mã lệnh) • Chứa mã lệnh chương trình (compiled program code) • Data section (Đoạn liệu) • Chứa biến tồn cục (global variables) biến static • Khởi tạo trước thực thi hàm main • Heap • Dành cho cấp phát nhớ động (dynamic memory allocation) • Được quản lý thơng qua hàm: new, delete, malloc, free, etc • Stack • Dành cho biến cục (local variables) Figure credit: Abraham Silberschatz, Greg Gagne, and Peter Baer Galvin, "Operating System Concepts, Ninth Edition ", Chapter Figure credit: https://cg2010studio.wordpress.com/2011/06/26/process-in-memory/ TRẠNG THÁI CỦA TIẾN TRÌNH • Khi thực hiện, trạng thái tiến trình thay đổi • Trạng thái tiến trình xác định hoạt động thời • Tiến trình nhận trạng thái sau: • New (Khởi tạo) – tiến trình khởi tạo • Ready (Sẵn sàng) – tiến trình chờ cấp CPU để thực thi lệnh • Running (Thực hiện) – câu lệnh tiến trình thực • Waiting (Chờ đợi) – tiến trình tạm dừng để chờ tài nguyên kiện • Terminated (Kết thúc) – tiến trình thực xong Figure credit: Abraham Silberschatz, Greg Gagne, and Peter Baer Galvin, "Operating System Concepts, Ninth Edition ", Chapter KHỐI ĐIỀU KHIỂN TIẾN TRÌNH • Process Control Block (PCB) • Cấu trúc thông tin cho phép xác định tiến trình Figure credit: Abraham Silberschatz, Greg Gagne, and Peter Baer Galvin, "Operating System Concepts, Ninth Edition ", Chapter KHỐI ĐIỀU KHIỂN TIẾN TRÌNH • Các thơng tin PCB • • • • Process state (Trạng thái tiến trình) Program counter (Bộ đếm chương trình) CPU registers (Các ghi) CPU scheduling information (Thông tin điều phối tiến trình) • Mức độ ưu tiên tiến trình, vị trí hàng đợi, … • Memory management information (Thơng tin nhớ tiến trình) • Accounting information (thông tin thống kê): • Thời gian sử dụng CPU, giới hạn thời gian • I/O status information • Danh sách thiết bị vào/ra cấp phát cho tiến trình, file mở 10 Figure credit: Abraham Silberschatz, Greg Gagne, and Peter Baer Galvin, "Operating System Concepts, Ninth Edition ", Chapter 19 CÁC HÀNG ĐỢI ĐIỀU PHỐI • Trong suốt thời gian tồn tiến trình di chuyển hàng đợi 20 BỘ ĐIỀU PHỐI – SCHEDULER Lựa chọn tiến trình hàng đợi • Điều phối dài hạn (Job scheduler; Long-term scheduler) • Điều phối ngắn hạn (CPU scheduler; Short-term scheduler) 21 BỘ ĐIỀU PHỐI DÀI HẠN • Thuật ngữ: Job scheduler, long-term scheduler • Trong hệ thống lơ, số lượng tiến trình đưa vào hệ thống thường nhiều số lượng tiến trình thực thi • Các tiến trình lưu trữ tạm thời thiết bị lưu trữ (mass-storage device), thường ổ đĩa (disk) • Bộ điều phối dài hạn lựa chọn tiến trình từ nhóm để tải vào nhớ 22 BỘ ĐIỀU PHỐI DÀI HẠN • Bộ điều phối dài hạn kiểm sốt mức độ đa chương trình (số lượng tiến trình nhớ) • Nếu mức độ đa chương trình ổn định, điều phối dài hạn gọi có tiến trình rời hệ thống • Điều phối khơng thường xun • Đơn vị giây/phút • Lựa chọn tiến trình: • Tiến trình thiên vào/ra (I/O bound) • Tiến trình thiên CPU (CPU bound) •  Cần lựa chọn loại tiến trình • Trong nhiều hệ thống, khơng có điều phối dài hạn • Ví dụ: Time-sharing system, như: Unix, Microsoft Windows 23 BỘ ĐIỀU PHỐI NGẮN HẠN • Thuật ngữ: CPU scheduler, short-term scheduler • Lựa chọn tiến trình từ ready queue phân phối CPU cho • Được thực thường xun • Phải thực nhanh • Thuật tốn lựa chọn tiến trình? 24 BỘ ĐIỀU PHỐI TRUNG HẠN • Thuật ngữ: Medium-term scheduler • Trong số hệ chia sẻ thời gian (time-sharing systems), có thêm điều phối trung hạn • Nhiệm vụ • Đưa tiến trình khỏi nhớ (làm giảm mức độ đa chương trình) • Sau đưa tiến trình trở lại tiếp tục thực • Mục đích • Giải phóng vùng nhớ, tạo vùng nhớ tự rộng 25 BỘ ĐIỀU PHỐI TRUNG HẠN 26 CHUYỂN ĐỔI GIỮA CÁC TIẾN TRÌNH • Thơng tin tiến trình thời (chứa PCB) gọi ngữ cảnh (context) tiến trình • Việc chuyển tiến trình cịn gọi chuyển đổi ngữ cảnh (context switch) • Xảy khi: • Có ngắt • Tiến trình gọi lời gọi hệ thống • Trước chuyển sang thực tiến trình khác, ngữ cảnh lưu vào PCB • Khi cấp phát CPU thực trở lại, ngữ cảnh khôi phục từ PCB vào ghi bảng tương ứng 27 Figure credit: Abraham Silberschatz, Greg Gagne, and Peter Baer Galvin, "Operating System Concepts, Ninth Edition ", Chapter 28 TRUYỀN THƠNG LIÊN TIẾN TRÌNH • Phân loại tiến trình • Hợp tác tiến trình • Hai mơ hình truyền thơng liên tiến trình • Shared memory systems • Message passing systems 29 PHÂN LOẠI TIẾN TRÌNH • Tiến trình • Điểm bắt đầu tiến trình nằm sau điểm kết thúc tiến trình • Tiến trình song song • Điểm bắt đầu tiến trình nằm điểm bắt đầu kết thúc tiến trình • Tiến trình độc lập • Tiến trình hợp tác 30 HỢP TÁC TIẾN TRÌNH • Mục đích • • • • Chia sẻ thơng tin Tăng tốc độ tính tốn Module hố Tiện dụng • u cầu chế: • Truyền thơng tiến trình • Đồng hố hoạt động tiến trình 31 HAI MƠ HÌNH CƠ BẢN CỦA TRUYỀN THƠNG LIÊN TIẾN TRÌNH • Shared Memory • Một vùng nhớ chung thiết lập cho tiến trình hợp tác • Các tiến trình trao đổi thông tin việc đọc (reading) ghi (writing) liệu vào vùng nhớ chung • Nhanh • Khó set up • Khơng dùng hệ đa máy tính (multiple computers) • Message Passing • Các tiến trình trao đổi thơng tin thơng qua hình thức truyền thơng điệp • Dùng chia sẻ lượng thơng tin nhỏ, hệ đa MT • Dễ lập trình Shared Memory • Chậm cần đến lời gọi hệ thống (System calls) 32 33 ... gian giới hạn • Do quản trị hệ thống hệ điều hành kết thúc 15 ĐIỀU PHỐI TIẾN TRÌNH • Mục tiêu • Các hàng đợi điều phối (Scheduling queues) • Bộ điều phối (Scheduler) 16 ĐIỀU PHỐI TIẾN TRÌNH • Thuật... xuyên • Phải thực nhanh • Thuật tốn lựa chọn tiến trình? 24 BỘ ĐIỀU PHỐI TRUNG HẠN • Thuật ngữ: Medium-term scheduler • Trong số hệ chia sẻ thời gian (time-sharing systems), có thêm điều phối... ngắn hạn (CPU scheduler; Short-term scheduler) 21 BỘ ĐIỀU PHỐI DÀI HẠN • Thuật ngữ: Job scheduler, long-term scheduler • Trong hệ thống lơ, số lượng tiến trình đưa vào hệ thống thường nhiều số lượng

Ngày đăng: 10/01/2020, 23:42

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan