Tài liệu Hướng dẫn giảng dạy hệ điều hành Linux: Quản lý tiến trình
Bạn có thểkích hoạt một chương trình bằng tên của chương trình ấy, hoặc từcác tập tin có chứa
lệnh shell. Trong khi thực hiện, chương trình có thểtương tác với nhiều thành phần khác của hệ
thống. Chương trình có thể đọc và ghi vào tập tin, quản lý thông tin trong RAM, hoặc gửi thông tin
đến máy in, modem hay những thiết bịkhác.
Tiến trình là một chương trình đơn chạy trên không gian địa chỉ ảo của nó, ởmột khía cạnh nào
đó, tiến trình hơn chương trình ởchỗlà biết sửdụng tài nguyên của một hệthống đang chạy,
trong khi chương trình chỉ đơn thuần là một loạt các câu lệnh. Một chương trình hay lệnh có thể
phát sinh ra nhiều tiến trình khác. Khảo sát lệnh nroff –man ps.1 | grep kill | more sẽsinh ra
3 tiến trình khác nhau. Có 3 loại tiến trình chính trên Linux:
-Tiến trình tương tác (Interactive processes ) : là tiến trình khởi động và quản lý bởi shell, kể
cảtiến trình forceground hoặc background.
-Tiến trình thực hiện theo lô (Batch processes) : tiến trình không gắn liền đến bàn điều khiển (
terminal ) và được nằm trong hàng đợi đểlần lượt thực hiện.
-Tiến trình ẩn trên bộnhớ(Daemon processes) : là các tiến trình chạy ẩn bên dưới hệthống
(background). Các tiến trình này thường được khởi tạo - một cách tự động - sau khi hệthống
khởi động. Đa sốcác chương trình server cho các dịch vụchạy theo phương thức này. Đây
là các chương trình sau khi được gọi lên bộnhớ, đợi (thụ động) các yêu cầu từcác chương
trình khách (client) đểtrảlời sau các cổng xác định (cổng là khái niệm gắn liền với giao thức
TCP/IP BSD socket). Hầu hết các dịch vụtrên Internet nhưMail, Web, Domain Name
Service đều được thi hành theo nguyên tắc này. Các chương trình loại này được gọi là
các chương trình daemon và tên của nó thường kết thúc bằng ký tự“d” nhưnamed, inerd
Một tiến trình khi thực hiện nếu sinh ra nhiều tiến trình con được gọi là tiến trình cha (Parent
Process). Khi tiến trình cha bịdừng thì các tiến trình con của nó cũng bịdừng theo.
Mỗi tiến trình mang một định danh gọi là PID (Process IDentification). Process Id là một con số
lớn hơn 0 và là duy nhất. Hệthống dựa vào các PID này đểquản lý các tiến trình. Khi khởi động,
Linux sẽthực hiện một tiến trình sẵn có trong hệthống mang tên Init (Vì là tiến trình đầu tiên
được thực hiện nên PID=1). Sau đó tiến trình này mới sinh ra các tiến trình khác; các tiến trình
khác có thểsinh ra các tiến trình khác nữa và cứtiếp tục nhưthếtạo thành cây phân cấp các tiến
trình (xem hình cây tiến trình bên dưới). Nhưvậy, dừng tiến trình Init nghĩa là dừng toàn bộhệ
thống
Các file đính kèm theo tài liệu này:
- pages_from_chung_chi_qan_tri_mang_linux_13_8605.pdf