编写linux设备驱动程序的一个问题

zeng_xiangyang 2003-08-19 04:51:24
在编写linux设备驱动程序,在file_operations中,read的函数原形是: ssize_t (*read) (struct file *, char *, size_t, loff_t *);
而我们自己在驱动程序中实现device_read()时,device_read()函数中的参数是不是一定要和file_operations中声明的一样啊?我们自己能不能改变device_read()函数中的参数类型或者参数个数啊?
...全文
64 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
zeng_xiangyang 2003-08-19
  • 打赏
  • 举报
回复
rlei,谢谢你的指点。我是刚接触linux设备驱动,我们现在有个项目
(服务元网络体系结构),我们导师自己提出来的一种新型网络体系结构,
要在linux下实现,我可能要负责网卡驱动方面的。我刚接触linux,以前从来
都没接触过,望以后多多指点.我的qq:171241219

rlei 2003-08-19
  • 打赏
  • 举报
回复
参数个数和类型是不能改变的而且必须和file_operations中声明一样。正如楼上大哥所说一般都是用char *做变通的。我想知道楼主是不是也在学习devicedriver啊,我也在做这方面的学习。我的qq是99119572,呵呵,多给我点分,我们以后一起探讨。
zhangjy2001 2003-08-19
  • 打赏
  • 举报
回复
我也想知道!!!
wwwunix 2003-08-19
  • 打赏
  • 举报
回复
参数要一样.不过你可以利用char *指针参数做变通.

23,120

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧