驱动程序和应用程序
一、应用程序和驱动程序如何关联起来的
1、文件描述符fp 与 struct file
应用程序(APP)在打开文件时,可以得到一个整数,这个整数被称为文件句柄。对于 APP
的每一个文件句柄,在内核里面都有一个struct file与之对应
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KGgUAnUL-1689557289701)(00驱动程序和应用程序的联系.assets/image-20230709221340028.png)]](https://img-blog.csdnimg.cn/74ae20d498fe478aad499549c602ae4b.png)
我们使用 open 打开文件时,传入的 flags、mode 等参数会被记录在内核中对应的 struct file 结构体里(f_flags、f_mode):int open(const char *pathname, int flags, mode_t mode);
去读写文件时,文件的当前偏移地址也会保存在 struct file 结构体的f_pos 成员里。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-O0MOnsL4-1689557289702)(00驱动程序和应用程序的联系.assets/app&kernel.jpg)]](https://img-blog.csdnimg.cn/42f4f02e994e4c6fb47422adf110cddb.jpeg)



















