Giới thiệu tài liệu
Trong môi trường tính toán hiện đại, sự vận hành hiệu quả của các hệ thống phần mềm phụ thuộc rất nhiều vào khả năng quản lý tài nguyên của hệ điều hành. Một trong những khái niệm cốt lõi để đạt được điều này là “Tiến trình” (Process), đại diện cho một chương trình đang được thực thi. Việc nắm vững cách các tiến trình được tạo, quản lý và tương tác là yếu tố then chốt để xây dựng các ứng dụng mạnh mẽ và hệ thống đáng tin cậy. Chương này đi sâu vào tìm hiểu cấu trúc và hoạt động của tiến trình cũng như vai trò của luồng, qua đó cung cấp nền tảng vững chắc về quản lý tài nguyên hệ thống.
Đối tượng sử dụng
Sinh viên ngành Khoa học Máy tính, Kỹ thuật Phần mềm, hoặc bất kỳ ai quan tâm đến nguyên lý hoạt động của hệ điều hành và quản lý tài nguyên hệ thống.
Nội dung tóm tắt
Tài liệu này cung cấp cái nhìn toàn diện về khái niệm tiến trình và cơ chế điều phối tiến trình trong hệ điều hành. Nó định nghĩa rõ ràng sự khác biệt giữa chương trình (thực thể thụ động) và tiến trình (thực thể chủ động), làm rõ cách một chương trình biến thành tiến trình khi được nạp vào RAM và CPU bắt đầu thực thi. Nội dung chi tiết về các trạng thái của tiến trình (Khởi tạo, Sẵn sàng, Đang chạy, Đang chờ, Kết thúc) và sơ đồ chuyển đổi trạng thái giúp hình dung vòng đời của một tiến trình. Tài liệu cũng giới thiệu Khối điều khiển tiến trình (PCB) như một cấu trúc dữ liệu quan trọng lưu trữ thông tin về từng tiến trình, từ trạng thái đến tài nguyên sử dụng. Đặc biệt, phần điều phối tiến trình giải thích cách hệ điều hành quản lý việc phân bổ CPU cho các tiến trình, bao gồm vai trò của hàng đợi (job-queue, ready-queue, device-queue) và chức năng của bộ điều phối công việc (job scheduler) và bộ điều phối CPU (CPU scheduler). Mục tiêu là tối ưu hóa việc sử dụng CPU và đảm bảo hiệu suất hệ thống bằng cách cân bằng giữa các tiến trình thiên về I/O và tính toán, mặc dù việc luân chuyển CPU (context switching) có thể gây lãng phí tính toán nhất định.