Linux 终端设备驱动函数的流向
2014-03-08 13:30
393 查看
1)终端设备数据发送和接收过程中的数据流和函数调用关系
2) tty 线路设置及流向
a、线路设置用户空间接口 (用户可用如下两种方式改变 tty 设备的线路设置或者获取当前线路设置)
1、调用用户空间的 termios 库函数
2、对 tty 设备节点进行 ioctl()调用
b、tty 驱动的操作
1、 、tty 驱动的set_termios 函数
说明:大部分 termios 用户空间函数被库转换为对驱动节点的 ioctl()调用,而 tty ioctl
中的大部分命令会被 tty 核心转换为对 tty
驱动的 set_termios()函数的调用
tty_operations中的 set_termios()函数原型为:
void(*set_termios)(struct tty_struct *tty,struct termios *old);
2、 tty 驱动的 tiocmget 和 tiocmset 函数
对 TIOCMGET、TIOCMSET、TIOCMBIC
和 TIOCMBIS IO 控制命令的调用将被
tty 核心转换为对 tty
驱动 tiocmget()函数和 tiocmset()函数的调用,TIOCMGET 对应
tiocmget()函数,TIOCMSET、TIOCMBIC 和 TIOCMBIS 对应 tiocmset()函数
3、tty 驱动的 ioctl 函数
当用户在 tty 设备节点上进行 ioctl()调用时,tty_operations 中的 ioctl()函数会被
tty 核 心调 用。 如 果 tty 驱动不知道如何处理传递给它的
ioctl 值 , 它 返回
–ENOIOCTLCMD,之后 tty 核心会执行一个通用的操作
参考资料:Linux 设备驱动开发详解-宋宝华
2) tty 线路设置及流向
a、线路设置用户空间接口 (用户可用如下两种方式改变 tty 设备的线路设置或者获取当前线路设置)
1、调用用户空间的 termios 库函数
2、对 tty 设备节点进行 ioctl()调用
b、tty 驱动的操作
1、 、tty 驱动的set_termios 函数
说明:大部分 termios 用户空间函数被库转换为对驱动节点的 ioctl()调用,而 tty ioctl
中的大部分命令会被 tty 核心转换为对 tty
驱动的 set_termios()函数的调用
tty_operations中的 set_termios()函数原型为:
void(*set_termios)(struct tty_struct *tty,struct termios *old);
2、 tty 驱动的 tiocmget 和 tiocmset 函数
对 TIOCMGET、TIOCMSET、TIOCMBIC
和 TIOCMBIS IO 控制命令的调用将被
tty 核心转换为对 tty
驱动 tiocmget()函数和 tiocmset()函数的调用,TIOCMGET 对应
tiocmget()函数,TIOCMSET、TIOCMBIC 和 TIOCMBIS 对应 tiocmset()函数
3、tty 驱动的 ioctl 函数
当用户在 tty 设备节点上进行 ioctl()调用时,tty_operations 中的 ioctl()函数会被
tty 核 心调 用。 如 果 tty 驱动不知道如何处理传递给它的
ioctl 值 , 它 返回
–ENOIOCTLCMD,之后 tty 核心会执行一个通用的操作
参考资料:Linux 设备驱动开发详解-宋宝华
相关文章推荐
- Linux 字符设备驱动开发基础(四)—— ioctl() 函数解析
- 乾坤合一:Linux设备驱动之终端设备驱动
- linux终端设备uart驱动分析
- Linux 设备驱动常用函数解析(更新中)
- linux终端设备uart驱动分析
- Linux 终端设备驱动整体框架(1)
- Linux 字符设备驱动开发基础(三)—— read()、write() 相关函数解析
- linux串口终端设备驱动分析
- Linux终端tty设备驱动编程
- Linux终端tty设备驱动
- 一步一步学习 Linux 驱动之设备控制接口函数(ioctl 函数)
- Linux终端设备驱动
- Linux 字符设备驱动开发基础(五)—— ioremap() 函数解析
- Linux终端设备驱动 ----UART的驱动
- Linux终端设备驱动
- Linux终端设备驱动(一)
- Linux终端设备驱动
- Linux终端设备驱动
- linux2.4和2.6在注册设备驱动函数…
- Linux终端设备驱动