伪终端是一对相互连接的虚拟设备,也称为主从设备。在这对设备之间,设有一条IPC信道,可供数据进行双向传递。
从设备(slave device)所提供的接口,其行为方式与终端相类似,基于这一特点,可以将某个为终端编写的程序与从设备连接起来,然后,再利用连接到主设备的另一程序来驱动这一“面向终端”的程序,这是伪终端的一个关键用途。由“驱动程序”所产生的输出,在经由终端驱动程序的常规输入处理(例如,默认情况下,会把回车符映射为换行符)后,会作为输入传递给与从设备相连接的面向终端的程序。而由面向终端的程序从设备写入的任何数据又作为“驱动程序”的输入来传递(在执行完所有常规的终端输入处理后)。换句话说,“驱动程序”所履行的功能,在效果上等同于用户通常在传统终端上所执行的操作。
伪终端广泛应用于各种应用领域,最知名的要数telnet和ssh之类提供网络登录服务的应用,以及X Window系统所提供的终端窗口实现。
本文出自 “云人生” 博客,请务必保留此出处http://ovcer.blog.51cto.com/1145188/1391056