我现在正在研究Ctrl + Alt + F1〜F7背后的机制是什么。
我发现了一些有关帧缓冲区,VT和tty的信息。我知道帧缓冲区是图形卡操作的一种障碍,而tty(和pts)是程序与之交互的东西。我还发现有些人在谈论VT(虚拟终端),但我不知道它们之间是什么关系。
在网上搜索后,我做了一个图。
我认为VT是一组显示器和键盘。如果要在一组(一个VT)中使用多个tty,则必须在tty之间切换,因为我只有一个监视器来显示它们。这是VT Swich。但是VT到底是什么?驱动程序,模块还是其他?
我想如果我有两组显示器和键盘连接到我的计算机,则可以将它们分组以形成两个VT。我可以在monitor1中显示我的tty1,并使用keyboard1和tty2与monitor2和keyboard2对其进行控制。我也可以在两个VT中进行VT切换。是真的吗?
而且我认为我可以将framebuffer(fbcon + fbdev)视为图形卡驱动程序,但这是为控制台而不是为通用目的(专有驱动程序)设计的。
此外,/ dev下还有一些特殊文件
/dev/tty*
和/dev/pts/*
用于ttyecho
可以将输入发送到tty,cat
可以接收来自tty的输出。
/dev/vcs*
用于VT的屏幕cat
可以在屏幕上获取文本,但是在X下使用它可以将全零(不为空)。
/dev/fb*
用于帧缓冲cat
可以获取屏幕上的整个像素,但是在X下使用它可以获得全零(不为空)。我听说X服务器不使用帧缓冲,那么它有什么用?
请告诉我我哪里错了。
vcs是X-Server erra之前使用的不同屏幕。或现在在未安装X服务器(甚至Wayland Server)的服务器中。在运行级别3和5中尝试使用CTRL + ALT + F3访问/ dev / vc3。您可以类似地回声和逗猫。
帧缓冲区是图形子系统的一部分,不应与cat一起使用。它是矩阵。它在连接的任何屏幕上的抽象。由图形驱动程序和应用程序使用。