JavaScript is required

Điều gì xảy ra với một tiến trình khi ta kill tiến trình cha của nó

A.

Không có gì ảnh hưởng

B.

Tiến trình con sẽ chết theo

C.

Chương trình sẽ đọc lại file cấu hình

D.

Sẽ có một tiến trình con mới sinh ra

Trả lời:

Đáp án đúng: B


Khi một tiến trình cha bị kill (bằng lệnh `kill` hoặc tương đương), hệ điều hành sẽ can thiệp. Các tiến trình con của tiến trình cha đó sẽ trở thành "orphan processes" (tiến trình mồ côi). Thông thường, tiến trình `init` (PID 1) sẽ nhận nuôi các tiến trình mồ côi này. Điều này có nghĩa là `init` sẽ trở thành tiến trình cha mới của chúng. Các tiến trình con vẫn tiếp tục chạy bình thường cho đến khi chúng tự kết thúc hoặc bị kill. Do đó, phương án A là chính xác nhất: Không có gì ảnh hưởng trực tiếp đến tiến trình con khi tiến trình cha bị kill (ngoại trừ việc chúng được tái cấu trúc lại dưới quyền quản lý của tiến trình `init`). Các phương án khác không mô tả đúng hành vi của hệ thống.

Câu hỏi liên quan