linux中的接口函数名,linux驱动中的接口函数的不理解

例如:

/*定义设备read接口函数*/

static ssize_t mydriver_read(struct file *filp, char *buf, size_t size,                        loff_t *offp)

{

if(size> 8192) size = 8192;

/* copy_to_user()*/

/*copy kernel space to user space. */

/*把数据从内核复制到用户空间的代码,可以根据实际添加*/

return size;                      /*返回字节数*/

}

/*定义设备的file_operations*/

static struct file_operations  mydriver_fops =

{

owner:      THIS_MODULE,

open:       mydriver_open,

release:     mydriver_release,

read:       mydriver_read,

write:      mydriver_write,

ioctl:       mydriver_ioctl,

poll:       mydriver_poll,

};

mydriver_read函数中的参数值是用户层调用read函数传过来的吗?

|

是的,但是内核经过了一些转换和包装在传递给mydriver_read的!

比如: fd -> struct file *filp

good luck!

|

fx_ent->read_proc 和 fx_ent->write_proc 是函数指针来的。

在这里不是调用,而是把 fx_proc_read 和 fx_proc_write 的地址传给他们而已。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值