Một nhóm quá trình là một tập hợp các quy trình liên quan có thể được báo hiệu cùng một lúc.
Một phiên là một bộ sưu tập của các nhóm quy trình, đó là một trong hai gắn liền với một thiết bị đầu cuối duy nhất (gọi là kiểm soát thiết bị đầu cuối) hoặc không kèm theo bất kỳ thiết bị đầu cuối.
Phiên được sử dụng để kiểm soát công việc: một trong các nhóm quá trình trong phiên là nhóm tiến trình nền trước và có thể được gửi tín hiệu bằng ký tự điều khiển đầu cuối. Bạn có thể nghĩ về một phiên với một thiết bị đầu cuối điều khiển tương ứng với một "đăng nhập" trên thiết bị đầu cuối đó. (Daemons thường tách liên kết khỏi bất kỳ thiết bị đầu cuối kiểm soát nào bằng cách tạo phiên mới mà không có một phiên.)
ví dụ: nếu bạn chạy some_app
từ trình bao, hệ vỏ sẽ tạo một nhóm quy trình mới cho nó và làm cho nhóm tiến trình tiền cảnh của phiên. (some_app
có thể tạo một số tiến trình con, theo mặc định chúng sẽ là một phần của cùng một nhóm tiến trình.) Nếu bạn nhấn ^Z
, nhóm quy trình của some_app
sẽ được báo hiệu để dừng nó; và nhóm quá trình của trình bao được chuyển thành nhóm tiến trình tiền cảnh một lần nữa. Sau đó, ví dụ:bg %1
sẽ bắt đầu lại nhóm quy trình của some_app
, nhưng hãy giữ nó ở chế độ nền.
Các POSIX.1-2008 standard là khá dễ đọc (ít nhất, tôi nghĩ như vậy!) - hãy xem các definitions và các bộ phận liên quan của chương "General Terminal Interface".
Nguồn
2011-07-01 20:48:19
Đó là giải thích rất tốt với thông tin bổ sung có thể xuất hiện dưới dạng câu hỏi sau –
@MatthewSlattery là 'terminal' và' terminal device' được đề cập trong tài liệu tương tự? – alhelal