在 ICRNL 和 OCRNL 等选项中,“输入时”和“输出时”意味着什么?

在 ICRNL 和 OCRNL 等选项中,“输入时”和“输出时”意味着什么?

的文档是termios这样说的:

ICRNL

输入时将回车符转换为换行符(除非设置了 IGNCR)​​。

奥克伦国家实验室

在输出上将 CR 映射到 NL。

但“输入时”和“输出时”到底是什么意思呢?我是这样认为的:

  • “输入时”表示终端向 tty 设备发送某些内容。
  • “输出时”是指当bash(或任何其他进程)向 tty 设备发送某些内容时。

我对么?

答案1

您需要将其视为连接到计算机上的串行端口的“哑终端”(例如vt100),并从计算机的角度来看待它。

所以“输入”到计算机就是终端向计算机发送数据;例如,当您在键盘上打字时。

类似地,“输出”是指计算机将内容发送到终端;例如,当它在屏幕上打印一些内容时。

通过更现代的设置(例如 Linux 控制台),我们仍然拥有相同的概念; “输入”是在键盘上输入的内容,“输出”是在屏幕上显示的内容。

这符合“stdin”和“stdout”的标准约定。

答案2

这是正确的,就特尔米奥斯因为它只涉及终端(显示字符的设备与输入字符的设备相结合的设备)和主机之间的通信。

“在”可能看起来很尴尬,但这只是“在进行输入的过程中”或“在进行输出的过程中”的简短表达方式。

相关内容