当前位置: 技术问答>linux和unix
终端与进程的关系
来源: 互联网 发布时间:2017-04-20
本文导语: 我对于unix/linux系统了解不多,请教一个问题:终端输入输出与进程的关系。 比如有两个进程,都从控制台读取输入(例如调用getchar),请问它们之间有竞争关系吗,输入的字符被 哪个进程获取? 再比如进程A调用t...
我对于unix/linux系统了解不多,请教一个问题:终端输入输出与进程的关系。
比如有两个进程,都从控制台读取输入(例如调用getchar),请问它们之间有竞争关系吗,输入的字符被
哪个进程获取?
再比如进程A调用tcsetattr修改了控制台终端属性,比如修改为raw模式,getchar读一个字符就返回,不用敲回车。那么这样的修改影响到另一个进程B吗?
比如有两个进程,都从控制台读取输入(例如调用getchar),请问它们之间有竞争关系吗,输入的字符被
哪个进程获取?
再比如进程A调用tcsetattr修改了控制台终端属性,比如修改为raw模式,getchar读一个字符就返回,不用敲回车。那么这样的修改影响到另一个进程B吗?
|
每个terminal窗口都是一个伪终端,相当于一个普通的进程,而所说的前台进程指的是在一个terminal窗口上运行的前台进程
|
一个终端下运行不了两个前台进程吧,lz假设的那些都实现不了
|
只有前台进程才能接受终端输入。先占个座,等待详细解答。
|
工作原理不一样,别靠猜测,可以看源代码