可能的重复:“终端”,“外壳”,“ tty”和“控制台”之间的确切区别是什么?
使用
who
命令时,我总是看到pts和tty,但是我不知道它们有何不同?有人可以给我解释一下吗?#1 楼
tty是本机终端设备,后端是硬件或内核仿真的。pty(伪终端设备)是由其他程序仿真的终端设备(例如:
xterm
,screen
,或ssh
是此类程序)。 pt是pty的从属部分。(更多信息可以在
man pty
中找到。)简短摘要:
pty是由通过
posix_openpt()
的进程创建(通常会打开特殊设备/dev/ptmx
),并且由一对双向字符设备组成:主部分,即通过以下方式获得的文件描述符通过此调用的此过程,用于模拟终端。进行一些初始化之后,可以使用
unlockpt()
解锁第二部分,而主机则用于接收或发送字符到第二部分(从属)。从属部分,在文件系统中锚定为
/dev/pts/x
(实数主机可以通过ptsname()
获得名称),其行为类似于本机终端设备(/dev/ttyx
)。在大多数情况下,将启动将其用作控制终端的外壳。评论
后端是什么意思?
–动力十足
19年1月14日在17:07
@动机:en.wikipedia.org/wiki/Computer_terminal
–StéphaneGimenez
19年1月14日在17:10
谢谢。我认为这是历史性参考,而不是当代使用,即它曾经有硬件支持。
–动力十足
19年1月14日在17:54
因此,从根本上说,tty是在“另一端”没有用户进程的地方?
–extremeaxe5
19年11月11日在16:21
#2 楼
tty
是常规终端设备(例如,服务器上的控制台)。pts
是伪终端从属设备(xterm
或ssh
连接)。 man pts
对伪终端进行了详细描述。
评论
另请参见Linux终端如何工作?以及/ dev / pts文件中存储的内容,我们可以打开这些文件吗?