- 链接地址:https://blog.csdn.net/weixin_54076783/article/details/126941128
- 链接标题:Linux内核结构与字符设备驱动-CSDN博客
- 所属网站:blog.csdn.net
- 被收藏次数:6532
当用户态(上层应用)调用open(“/dev/xxx”,O_RDWR,0666)时,会执行一条汇编指令(swi xxx),该指令会发生一次异常,类似于中断,中断号为0x80,0x80代表发生了一次系统调用,进入了内核态,然后内核态会调用syscall(),该函数会根据open()提供的设备名(文件名)找到主设备号从而在驱动链表找到相应的驱动(即找到结构体file_operations),然后vfs调用sys_open来调用驱动的kernel_open(),write(),read()同理,syscall()
版权声明:本文发布于特牛生活网 内容均来源于互联网 如有侵权联系删除