学习随笔-到底什么是终端、终端模拟器和伪终端

什么是终端

一般来说终端是指用于输入输出的物理设备

计算机 = 主机 + 终端
终端 = 输入终端 + 输出终端

简单解释他们之间的联系

  • 电传打字机(TTY)是物理设备,最初是为电报设计的,后来被连接到计算机上,发送输入和获取输出。

  • 电传打字机(TTY)现在被运行在内核中的模块所模拟,被称为终端模拟器(terminal emulator)。

  • 伪终端(pseudo terminal, PTY) 是运行在用户区的终端模拟程序。

  • Shellterminal fork 出来,是 terminal 的子进程。Shell 不处理键盘事件,也不负责字符的显示,这些是由 terminal 处理。Shell 负责解释执行用户输入的字符。

  • 可以使用 stty 命令对 TTY 设备进行配置。

  • 远程终端 ssh 也是一种伪终端 PTY。

在Linux操作系统中的体现

Linux中的终端模拟器也被称作虚拟终端

Linux中可以使用快捷键Ctrl+Alt+Fn在虚拟终端之间切换,桌面模式一般会占用一个/dev/ttyn,但不同的发行版可能不尽相同,仅作为参考

Linux桌面模式下运行的terminal就是伪终端,很多发行版用的都是gnome-terminal

使用tty命令可以查看当前终端使用的设备文件,虚拟终端一般是/dev/ttyn,伪终端一般是/dev/pts/n

Linux中使用的shell一般是bash


参考来源:
https://xie.infoq.cn/article/a6153354865c225bdce5bd55e
https://www.cnblogs.com/jfzhu/p/13040942.html

posted @ 2022-12-02 14:27  犯雨星  阅读(681)  评论(0编辑  收藏  举报