可以改变tty提高编译速度吗?

当我做大量的编译(任何地方,但我的问题假设Linux),许多消息往往输出到屏幕上。 我的问题是,这些信息是否减缓了这个过程? 如果他们这样做,切换到不同的tty,所以他们不显示在屏幕上减less性能打击?

是的,他们当然可以。

http://www.linuxakesson.net/programming/tty/index.php

在xterm中运行yes,你会看到很多“y”线在你眼前晃动。 自然,yes过程能够比xterm应用程序能够更快地生成“y”行,更新其帧缓冲区,与X服务器进行通信以便滚动窗口等等。 这些项目怎么合作?

答案在于阻止I / O。 伪terminal只能在其内核缓冲区内保存一定数量的数据,当缓冲区满时,并且是试图调用write(2),则write(2)将被阻塞,将yes进程移动到可中断的睡眠状态直到xterm进程有机会读取一些缓冲的字节为止。

如果TTY连接到串行端口,则会发生同样的情况。 是的,将能够以比9600波特高得多的速率传输数据,但是如果串行端口被限制在那个速度,内核缓冲器很快就会填满,随后的任何写入(2)调用都会阻塞进程(或失败如果进程请求了非阻塞I / O,则返回错误代码EAGAIN)。

如果你害怕这个,加快编译速度的方法是:

make >&/tmp/log.out & tail -f log.out