终端是一种字符型设备,它有多种类型:
1. 串口终端 (/dev/ttySn)
串口终端就是实体的串口终端设备.
Linux: /dev/ttyS0 -> /dev/tts/0 DOS: COM1
/dev/ttyS1 -> /dev/tts/1 COM2
/dev/ttyS2 -> /dev/tts/2 COM3
/dev/ttyS3 -> /dev/tts/3 COM4
eg:若要向一个端口发送数据,可在命令行上执行:echo test > /dev/ttyS1
2. 伪终端 Pseudo Terminal(/dev/ptyn)
伪终端是成对的逻辑终端设备.它需要kernel支持,注意有的系统kernel默认最大伪终端数为0.
eg:/dev/pty/s3 or /dev/pty/m3 <==> /dev/ptys3
/dev/ttys3 与 /dev/ptys3是一对.
一般 ttysn 主设备为3 次设备号相同 slave
ptysn 主设备为2 次设备号相同 master
3. ptmx / pts 结合使用实现pty(虚拟终端)
ptmx:pseudo-terminal master
pts:pseudo-terminal slave
4. 在DUN中,BT使用ptmx,pppd使用pts.
在SPP中,BT使用ptysn,minicom使用ttysn
需要自己create ptysn和ttysn设备文件
注意:/dev/ttysn 与/dev/ttySn是不同的.前者是虚拟的,后者是实体的.