UNIX系统中需要终端仿真器

UNIX系统中需要终端仿真器

我试图理解unix中虚拟终端的概念,但我无法清楚地弄清楚终端模拟器的需求和虚拟控制台的概念。

我正在浏览一个视频演讲在 youtube 上,讲师说现在我们没有终端,因为我们有完整的显示器、键盘和鼠标设置。为什么我们不能将它们视为终端?根据定义终端,它是一组用于与进程通信的硬件。那为什么作者说我们现在没有终端呢?

为什么我们需要终端模拟器?讲师说,终端仿真器位于“x window 系统服务器”之间,进程使用终端仿真器与输出设备进行通信。但在 GUI 进程的情况下,直接与“x window 系统服务器”对话,该服务器实际上与 stdin/stdout 的设备驱动程序进行通信。但是,如果进程能够直接与“x window 服务器”对话,为什么我们需要终端模拟器呢?对于“x window server”不支持 CLI 并且对于命令行交互,终端仿真器是否充当进程和“x window server”之间的适配器?

编辑:-

我浏览了下面的答案和其他一些资源,这就是我得到的。显示屏可以在两种情况下工作字符模式亚太地区协会模式。当我们使用命令行界面时,系统需要终端字符设备文件进行 I/O。现在,当我们已经运行 GUI 时,这意味着我们已经以非字符模式显示,并且我们打开 CLI,该会话需要一个终端字符文件进行通信,但该文件不存在。因此,我们需要终端模拟器来创建伪终端字符文件,并与 x-window-server 通信并充当适配器。
内核还有一些特定于设备的实际终端字符文件,当我们使用文本模式将其连接到任何显示器时,这些文件就会发挥作用。当我们使用 GUI 时,不需要终端字符文件。

是正确的还是我弄错了?

答案1

类 Unix 操作系统是为分时环境而设计的,它使用终端和终端协议与这些系统上运行的进程进行通信。

在现代类 Unix 系统中,进程及其终端都在同一系统上运行。因此,终端仿真器就像在软件中运行的物理终端一样,然后与进程对话。

保留该系统有实际原因,包括维护 POSIX 兼容性以及它只是进程间通信的一种方便形式。

相关内容