- 设备文件中用逗号连接起来的两个数字为主设备号和从设备号。主设备号确定实际的设备驱动程序,从设备号作为参数。 如下图中的,主设备号-4,从设备号-2
- 设备文件中的i-node存储的是指向内核子程序指针
- fcntl()针对当前fd描述的连接,执行操作,并不会改变文件本身的属性。
- 属性O_SYNC位告诉内核,对write的调用必须在数据写入真实硬件之后才能返回,而不是在数据复制到内核缓冲时就返回。
- tcsetattr中的when有三个值:
- TCSANOW---立即更新驱动程序
- TCSADRAIN---等待直到驱动程序队列中的所有输出都被送到终端,然后进行驱动程序的更新。
- TCSAFLUSH---等待直到驱动程序队列中的所有输出都被传送出去,然后释放所有队列中的输入数据,并进行一定的变化。
- termios 相关的函数描述了用于控制异步通信端口的通用终端接口
struct termios{ tcflag_t c_iflag; /* input modes */ tcflag_t c_oflag; /* output modes */ tcflag_t c_cflag; /* control modes */ tcflag_t c_lflag; /* local modes */ cc_t c_cc[NCCS]; /* special characters */ }
-
所有的Devicename获取之后都是需要在头上加入“/dev/”,因为获取的仅仅是“pts/1”,“pts/0”之类的