这是从(经过一些改写)中提取的计算机终端和虚拟控制台,已结束,并附有链接到的帽注“终端”、“shell”、“tty”和“控制台”之间的确切区别是什么?。原始发帖人对计算机终端和虚拟控制台/终端之间的关系和差异感兴趣。哪个依赖于操作系统?它有什么关系文本与图形化的终端?
引自维基百科:
计算机终端是一种电子或机电硬件设备,用于将数据输入计算机或计算系统并显示来自计算机或计算系统的数据。早期的终端是廉价设备,但与用于输入的打孔卡或纸带相比速度非常慢,但随着技术的改进和视频显示器的引入,终端将这些旧的交互形式从行业中推了出来。一个相关的发展是分时系统,它是并行发展的,并弥补了用户打字能力的低效,能够支持同一台机器上的多个用户,每个用户都在自己的终端上。
引自维基百科:
虚拟控制台 (VC) – 也称为虚拟终端 (VT) – 是计算机用户界面的键盘和显示器的概念组合。它是UnixWare、Linux、BSD等一些操作系统的一个功能,可以利用计算机的系统控制台在多个虚拟控制台之间切换,以访问不相关的用户界面。虚拟控制台至少可以追溯到 20 世纪 80 年代的 Xenix。
答案1
简而言之:虚拟控制台是Linux控制台和其他一些操作系统的一个功能。计算机终端是为用户提供与计算机接口的独立设备。也可以看看关于“虚拟终端”短语的讨论。
这系统控制台计算机(或简称为“控制台”)显示来自操作系统的一些信息,例如其启动过程。它还可以运行命令行解释器,提供用户输入的反馈并显示执行命令的文本结果。
什么是虚拟控制台?这一概念使一个物理控制台(即显示器和键盘)充当多个不同的控制台终端设备那些连接到计算机的。它允许访问多个不相关的用户界面。在 Linux 中,它是一个非常早期的介绍(由 Linus Torvalds 提出),几乎与虚拟终端 ( vt
) 代码同时进行,虚拟终端 ( ) 代码是 Linux 的第一个功能之一。当用户按下Ctrl+ Alt+( F1– F12) 时,他会立即切换到指定编号的控制台,而(当前不可见)控制台上的进程继续运行。
VC与传统终端有何关系?一些 Unix 机器(我在 1993 年见过)运行多个通过 RS-232 连接的文本终端。与现代虚拟控制台一样,它们提供独立的用户界面,不同的用户可以登录不同的终端。但也存在差异。这些(串行线)连接的终端中只有一个是安慰,其他只是终端。相比之下,Linux-BSD虚拟控制台的主要目的确实是作为系统控制台。 Linux 内核可以使用其中任何一个(并使用当前的一个)来写入紧急消息。当然,还有传统终端一些用户可以同时使用键盘——这在虚拟控制台上是不可能的。
传统终端可以是纯文本的,也可以是图形的,对吧。一般来说,不同的终端可以具有不同的功能。虚拟控制台的类似情况:具有图形功能的显示器,每个可用于 TUI 或图形。而且,在 TUI 中,Linux 允许在每个控制台上进行不同的设置,包括(自 2.6 起)独立的等宽字体,这意味着 VC 可能存在差异文本行数和 cpl(尽管视频模式相同)。 Linux 内核确保在使用文本应用程序时虚拟控制台的一致性。
但概念之间也存在差异。 Linux 内核仅在 TUI(硬件文本模式或通过仿真)中行使虚拟控制台的职责fbdev
。为了在虚拟控制台中处理图形,用户空间程序(例如 X Window 服务器)必须处理其控制台的进出。虽然文本应用程序可以在其控制台关闭时在“屏幕”上写入文本,但在 Linux 上则不能使用图形。一个人可以在多个VC中具有图形模式,并且程序将同时运行。但内核不会为图形应用程序保留帧缓冲区内容(它为 TUI 应用程序保留帧缓冲区内容)。当用户进入虚拟控制台时,此类应用程序必须自行设置其视频模式并恢复屏幕。