2
过程(在我的情况下,会话领导者)如何获得控制终端?控制终端和新会话
我在我的程序做什么:
1. fork;
2. parent -> while(1) or smth. similar;
3. child -> setsid();
exec "man ps";
我beleived,我会得到什么输出。 (孩子是会议的领导者,因此现在它与老tty没有任何关系)但我明白了为什么。人输出。但不是互动的。当我按下Ctrl-z时,它会变成交互式,当我按下'q'时,它会回复并返回到我的编(父母)。所以问题是:
- 请解释之初发生了什么(为什么我必须按CTRL-Z,阅读上面)
- 为什么人会在外壳一些输出?
- 怎样才能做到这一点没有任何tty连接(我检查了与PS,人和传呼机在TTY栏中有“?”)
- 最后:新会议领导者如何获得控制终端。除了
open(/dev/tty)
还有什么方法吗?