pty 从属端的进程是否与线路规则或从属 tty 驱动程序对话?

pau*_*aul 6 linux pty

我发现了两个关于伪终端 (pty) 工作原理的相互矛盾的图像。

第一张图显示了 pty 从属端的进程与线路规则对话:

在此处输入图片说明

第二张图显示了 pty 从属端的进程与从属 tty 驱动程序对话:

在此处输入图片说明

哪个图是正确的?

dr_*_*dr_ 5

第二张图片是正确的。(顺便说一句,它来自这里。)

从这个问题的公认答案来看:

线路规程是一个软件模块(驻留在驱动程序中、内核中),被推送到位于该设备和线路(pty 的主端)之间的串行/pty 设备之上。

(...)

您可以通过发出 stty raw -echo 来查看禁用 tty 线路规则的效果(请注意,bash 提示符或其他交互式应用程序(如 vi)将终端设置为它们所需的确切模式,因此您需要使用像 cat 这样的哑应用程序来有这方面的经验)。然后,写入从终端设备的所有内容都会立即发送到主设备端以供 xterm 读取,并且 xterm 写入主设备端的每个字符都可以立即从从设备中读取。

另请参阅这篇关于 ttys 的文章

  • 看起来第三个链接已更改为 https://www.yabage.me/2016/07/08/tty-under-the-hood/ (2认同)