是"前台进程组"控制终端的财产或会议的财产?

时间:2017-11-24 09:53:17

标签: c linux linux-kernel

Linux中的会话可以有一个控制终端。

我感兴趣的是当您设置控制终端的前台进程组(使用tcsetpgrp())时,是保存前台进程组属于控制终端数据结构还是属于会话数据结构?

1 个答案:

答案 0 :(得分:1)

tcsetpgrp()是通过tty设备上的ioctl TIOCSPGRP实现的。

这个ioctl反过来在内核函数tiocspgrp中实现,为终端设置pgrp的成员struct tty_struct

简而言之,前台进程组存储在tty数据结构中。这是有道理的,因为前台进程组的效果是识别当用户按下诸如ctrl-C和ctrl-Z之类的组合键时哪些进程将从tty接收信号。