通常我们在linux下看到的控制台(console)是由几个设备完成的。分别是/dev/ttyN(其中tty0就是/dev /console,tty1,tty2就是不同的虚拟终端(virtual console)).通常使用热键alt+Fn来在这些虚拟终端之间进行切换。所有的这些tty设备都是由linux/drivers/char
/console.c和vt.c对应。
/dev/pts是远程登陆(telnet,ssh等)后创建的控制台设备文件所在的目录。由于可能有好几千个用户登陆,所以/dev/pts其实是动态生成的,不象其他设备文件是构建系统时就已经产生的硬盘节点(如果未使用devfs)
/dev/pts是远程登陆(telnet,ssh等)后创建的控制台设备文件所在的目录。由于可能有好几千个用户登陆,所以/dev/pts其实是动态生成的,不象其他设备文件是构建系统时就已经产生的硬盘节点(如果未使用devfs)
不知道是不是动态建立的?但是在制作文件系统的时候,需要自己手工建立/dev/pts设备目录。
mkdir -p /dev/pts
mkdir -p /dev/shm
/bin/mount -n -t devpts none /dev/pts -o mode=0622
/bin/mount -n -t tmpfs tmpfs /dev/shm
代码来自于mini2440的rootfs中。
第一个用户登陆,console的设备文件为/dev/pts/0,第二个为/dev/pts/1,以此类推。这里的0、1、2、3不是具体的标准输入或输出,而是整个控制台。你可尝试 echo "aaaaaa" > /dev/pts0、1、2……。
/dev/tty指的是当前所处的终端,输出到此的内容只会显示在当前工作的终端显示器上
/dev/console就是tty0
/dev/pts是远程登陆(telnet,ssh等)后创建的控制台设备文件所在的目录
mkdir -p /dev/shm
/bin/mount -n -t devpts none /dev/pts -o mode=0622
/bin/mount -n -t tmpfs tmpfs /dev/shm
代码来自于mini2440的rootfs中。
第一个用户登陆,console的设备文件为/dev/pts/0,第二个为/dev/pts/1,以此类推。这里的0、1、2、3不是具体的标准输入或输出,而是整个控制台。你可尝试 echo "aaaaaa" > /dev/pts0、1、2……。
/dev/tty指的是当前所处的终端,输出到此的内容只会显示在当前工作的终端显示器上
/dev/console就是tty0
/dev/pts是远程登陆(telnet,ssh等)后创建的控制台设备文件所在的目录
通常板子里的console=ttyAMA0,115200都是用串口端口终端的,所以我们操作板子只是操作串口终端,而不是tty0,例子:console=ttyAMA0, 9600n8,其中波特率、校验位、位数,格式为BBBBPN,其中BBBB表示波特率,P表示校验
(n/o/e),N表示位数,默认options是9600n8
(n/o/e),N表示位数,默认options是9600n8