虚拟控制台是否作为进程运行并基于伪终端实现?

Tim*_*Tim 4 linux terminal-emulator virtual-consoles pseudoterminal

Linux有7个虚拟控制台,对应7个设备文件/dev/tty[n]

虚拟控制台是否作为进程运行,就像终端模拟器一样?(我不确定。似乎虚拟控制台是内核的一部分,如果这是正确的,它就不能是一个进程。)

是不是像终端模拟器一样,是基于伪终端实现的虚拟控制台?(我猜不会。否则,虚拟控制台的设备文件将是/dev/pts/[n], 而不是/dev/tty[n]

谢谢。

Jde*_*eBP 11

那是不正确的。

Linux 内核中内置了一个终端模拟器程序。它不会表现为具有打开文件句柄的正在运行的进程。它也不需要伪终端设备。它位于帧缓冲区和输入事件子系统之上,它使用内部内核接口来访问。它以一系列 63 个(而不是 7 个)内核虚拟终端设备的形式出现在应用程序模式系统中,/dev/tty1/dev/tty63.

用户空间虚拟终端是使用伪终端设备实现的。伪终端设备、内核虚拟终端设备和位于串口之上的真实终端设备是Linux中的三种终端设备(就应用程序而言)。

由于缺乏协调,Linux 文档现在在这个主题上非常糟糕。尽管有其他两种类型的终端设备的页面,但多年来一直没有针对多个 Linux 操作系统上的内核虚拟终端设备的手册页。本手册页将解释正确的编号或设备及其设备文件名,并用于阅读:

一个 Linux 系统有多达 63 个虚拟控制台(主要编号为 4 和次要编号为 1 到 63 的字符设备),通常以 1 <= n <= 63调用。当前控制台也由或寻址,主编号的字符设备4 和次要号码 0。/dev/ttyn/dev/console/dev/tty0

Debian 人注意到 Debianconsole在 2014年缺少(4) 手册页,并转而从 Linux Manpages 项目安装该手册页,只是为了让同一项目中的人在console一年后删除他们的(4) 手册页2016 因为“Debian 和衍生产品不安装此页面”和“Debian 不再携带它”。

进一步阅读


归档时间:

查看次数:

369 次

最近记录:

5 年,7 月 前