Session

抽象、會話、會話領導和流程組的目的是什麼?

  • July 14, 2013

我從Informit 文章中了解到,會話和程序組用於在退出時終止後代程序,並向具有作業控制的相關程序發送信號。

我相信可以使用每個程序的 PPID 在任何時候提取此資訊。這些概念是否存在只是為了擁有一個能夠快速獲取流程後代的資料結構?

除了工作控制和終止後代之外,會話和流程組是否會被雇用?他們儲存任何上下文資訊嗎?

任何好的參考資料都會有所幫助。

程序組的存在主要是為了確定從終端啟動的哪些程序可以訪問該終端。只有前台程序組中的程序可以讀取或寫入其控制終端;後台程序由 SIGTTIN 或 SIGTTOU 信號停止

您可以通過將負 PID 參數傳遞給kill. 當終端驅動程序生成信號以響應特殊字元(例如Ctrl+的 SIGINT C)時,也會發生這種情況。

會話跟踪哪些程序組附加到終端。只有在與控制程序相同的會話中執行的程序才是前台或後台程序。

無法從 PPID 確定程序組或會話。您將無法知道程序的父程序是在同一個程序組中還是在不同的程序組中,對於會話也是如此。

引用自:https://unix.stackexchange.com/questions/82844