一、 tty(teletypes)

tty设备包括虚拟控制台,串口以及伪终端设备。tty的种类有很多:

1.1 tty

其中,tty是当前进程的控制终端的设备特殊文件。可以通过如下方式验证:

ubuntu@VM-32-73-ubuntu:/dev$ echo hello >/dev/tty
hello

当我们将输出重定向到/dev/tty文件时,结果总会输出到当前终端上。

1.2 ttyn

tty0~tty63是虚拟终端的设备特殊文件。/dev/tty0代表当前虚拟控制台,而/dev/tty1等代表第一个虚拟控制台。使用Alt+[F1—F6]组合键时,我们就可以切换到tty2、tty3等上面去。(待深入补充)

1.3 ttySn

ttyS代表tty serial,/dev/ttyS*是串行终端设备。这些设备文件会映射到物理串行端口,如果我们执行下列命令:

echo 2 > /dev/ttyS2

那么在对应的物理端口,如COM2上可以检测到输出。

二、 pty(pseudo-tty)

pty全称pseudo-tty,即伪终端设备,用于远程连接。它由master和slave两端构成,在任何一端的输入都会传达到另一端。与tty不同,系统中并不存在pty这种文件,它是由pts(pseudo-terminal slave)和ptmx(pseudo-teiminal master)两种设备文件来实现的。

三、 pts(pseudo-terminal slave)

pts(pseudo-terminal slave)即伪终端的slave端。在Linux的/dev/pts/文件夹下有对应设设备文件。
我们可以通过tty命令查看当前用户的登录终端,如下图所示:

ubuntu@VM-32-73-ubuntu:/dev$ tty
/dev/pts/1

当我们设备文件/dev/pts/1进行输出时,屏幕上会显示相应输出:

ubuntu@VM-32-73-ubuntu:/dev$ echo hello >/dev/pts/1
hello

倘若访问别的slave文件,如/dev/pts/2,则会返回权限不足错误:

ubuntu@VM-32-73-ubuntu:/dev$ echo hello >/dev/pts/2
-bash: /dev/pts/2: Permission denied

四、 ptmx(pseudo-terminal master)

ptmx是伪终端的master端。在/dev下仅有2个ptmx文件,其信息如下:

ubuntu@VM-32-73-ubuntu:/dev$ ll /dev/ptmx
crw-rw-rw- 1 root tty 5, 2 Jan 16 16:38 /dev/ptmx
ubuntu@VM-32-73-ubuntu:/dev$ ll /dev/pts/ptmx
c--------- 1 root root 5, 2 Mar 17  2018 /dev/pts/ptmx

从中可以看出任何用户都可对/dev/ptmx进行读写,而任何用户对/dev/pts/ptmx都没有读写权限。(这两个文件更加具体的作用暂不清楚,留待后续深入)

Linux中的tty、pty、pts与ptmx辨析相关推荐

  1. Linux中的tty、pts、pty等概念辨析

    Linux中的tty.pts.pty等概念辨析 基本概念 tty.pty.pts.ptmx tty(终端设备的统称):tty一词源于Teletypes,或teletypewriters,原来指的是电传 ...

  2. linux基础:tty pty pts tts介绍

    1. tty(终端设备的统称): tty一词源于Teletypes,或者teletypewriters,原来指的是电传打字机,是通过串行线用打印机键盘通过阅读和发送信息的东西,后 来这东西被键盘与显示 ...

  3. Linux下的tty和pts详解

    Linux下的tty和pts详解 今天在在使用who和ps命令的时候,出现tty1或者pts/0,因为不太懂就查了一下: 使用tty命令可以查看现在使用的终端标识: 使用ctrl+alt+[F1~F8 ...

  4. Linux开启可视化进程传递pts,Linux下tty/pty/pts/ptmx详解(转)

    基本概念: 1> tty(终端设备的统称): tty一词源于Teletypes,或者teletypewriters,原来指的是电传打字机,是通过串行线用打印机键盘通过阅读和发送信息的东西,后来这 ...

  5. linux下echo /dev/ttys* 到字符设备文件,linux之tty pty pts

    一.基本概念: 1> tty(终端设备的统称): tty一词源于Teletypes,或者teletypewriters,原来指的是电传打字机,是通过串行线用打印机键盘通过阅读和发送信息的东西,后 ...

  6. linux内核去掉pty,Linux tty pty pts观念区别

    基本观点: 1. tty(终端装备的统称): tty一词源于Teletypes,或许teletypewriters,原来指的是电传打字机,是议决串行线用打印机键盘议决阅读和发送信息的东西,后来这东西被 ...

  7. linux tty pty pts tts概念 区别

    1. tty(终端设备的统称): tty一词源于Teletypes,或者teletypewriters,原来指的是电传打字机,是通过串行线用打印机键盘通过阅读和发送信息的东西,后 来这东西被键盘与显示 ...

  8. Linux下的tty和pts

    在使用who和ps命令的时候,有时会出现tty或者pts/1等. 使用tty命令可以查看现在使用的终端标识: 使用ctrl+alt+[F1~F8]来切换操作终端 使用echo "test x ...

  9. linux用户切换pts,Linux下的tty,pts,pty…和多窗口切换 | 云上小悟

    Linux下TTY(TeleType)的概念就是控制台终端的意思,TTY最初就是指那种老式的打字机. 如果你在vmware中安装ubuntu之后,你会发现有6个tty控制台可以用,通过Ctrl+Alt ...

最新文章

  1. Python 快速生成 web 动态展示机器学习项目!
  2. Servlet3.0之九:web模块化
  3. 正则 不能有中文逗号_Python爬虫教程-19-数据提取-正则表达式(re)
  4. 骚出天际!一个程序员女装照片的开源项目
  5. C# Winform验证码
  6. Leecode22. 括号生成——Leecode大厂热题100道系列
  7. ORACLE数据加载加本,使用oracle sqlldr加载数据
  8. 前端学习(1353)模板语法条件判断
  9. android bugly 符号表,bugly cocos 接入和 符号表使用
  10. 新泰一中2021年高考成绩查询,牛!泰安新泰一中2018年高考一班级62人全部上本科线...
  11. 富士通服务器操作系统安装,U盘为富士通LIFEBOOK SH760笔记本安装原版win7系统教程...
  12. Linux 下串口编程入门
  13. python定义矩形类_python类矩形新类型
  14. OCP问题debug
  15. 也来谈谈函数返回引用 int fun(int x);
  16. beautiful_sky(Bugku)
  17. Flutter自定义Widget实例 -如何创建炫酷粒子时钟效果!
  18. 怎样快速实现整篇文档中英互译
  19. openwrt修改生成BIN文件大小以用于8M FLASH(WR703N)
  20. 华为p20如何连接计算机,华为P20pro如何快捷传文件到电脑?华为P20pro快捷传文件到电脑的方法...

热门文章

  1. 一个简单的加壳解壳程序
  2. 写一个判断素数的函数,在主函数输入一个整数输出是否为素数的信息
  3. Spring Data JPA-单向一对一关联映射
  4. 计算机房清洁安排表怎么做,机房总安排表.doc
  5. 设计师:裸眼 3D 效果,你们客户端实现很难吗?
  6. Spring-IOC—基于XML配置Bean
  7. 算法高级(20)-集群容错算法
  8. 解决Windows中mfc100.dll文件缺少问题
  9. JavaScript 数据类型的转换
  10. mysql启动异常:The server quit without updating PID file