Ubuntu GUI 本身就是 TTY 吗?

Ubuntu GUI 本身就是 TTY 吗?

将 Ubuntu GUI 本身称为 TTY 是否准确?我知道 TTY 这个术语不一定与终端控制台或终端仿真器(CLI 环境)有关,如果定义足够广泛的话,也可以指 GUI。

因此,我的问题实际上可以由以下两个问题组成:

  1. 将 Ubuntu GUI(或任何其他操作系统 GUI)命名为“TTY”是否准确?
  2. 是否可以说任何窗口(例如目录窗口或 gedit/geany 窗口)本身都是一个 TTY 或者仅仅是更大的 GUI TTY 的一部分(窗口)?

答案1

将 Ubuntu GUI(或任何其他操作系统 GUI)命名为“TTY”是否准确?

桌面需要 tty 才能运行,但这并不意味着 GUI 就是 tty。您应该将其称为会话,并将其称为用于登录命令行会话或桌面会话的 tty。

是否可以说任何窗口(例如目录窗口或 gedit/geany 窗口)本身都是一个 TTY 或者仅仅是更大的 GUI TTY 的一部分(窗口)?

不,那些是(会话内的)过程。

答案2

TTY 实际上是虚拟终端的一个实例。早期的计算机只是巨大的盒子,上面连接着一个真实的物理终端,通常称为 TTY(电传打字机的缩写)。虚拟终端之所以被称为虚拟,正是因为这个原因 - 您的计算机现在是一个单一单元,并且您有几个不同的虚拟软件电传打字机(更具体地说,对于 Ubuntu 来说,它是 6 个 tty,但您可以生成更多。请参阅我的回答:https://askubuntu.com/a/817859/295286)。在 TTY 中,您可以运行进程,无论是基于文本的 shellbash还是运行图形 shell 的图形服务器。

具体发生的事情是,你有特定的实例在特定 tty 中运行 GUI(或者更专业的术语是,您正在运行 X11 服务器)。在 Ubuntu 中,它默认为 TTY #7。当我使用 Fedora 21 时,它默认为 TTY1。并且您可以拥有多个 GUI 实例,例如:在不同的 TTY 上启动另一个 GUI

因此实际上,GUI 会话只不过是在 TTY 内运行的单独进程。

附加信息:

答案3

桌面在 TTY 上运行。窗口是不同的进程,与 TTY 无关。它只显示在桌面环境中。

答案4

阅读这里的答案后,我明白了这一点:

在以前某个时代的计算机中,tty 是一种插入计算机的打字机,它是一种带有小型输出屏幕的键盘。

现代操作系统有多种虚拟的tty。

基于现代tty,我们至少有一个GUI或至少一个CLI。

这两个 GUI 或 CLI 都是基于 tty 的会话,并且可以有子会话(有时实际上是窗口)。

tty 是特殊文件,而 GUI 和 CLI 基本上都是不同的进程。

相关内容