linux驱动中read 和write 函数疑问
本帖最后由 飘扶摇 于 2011-05-26 23:41 编辑ssize_t xxx_read(struct file *filp, char *buffer, size_t count, loff_t *ppos);
ssize_t xxx_write(struct file *filp,const char *buffer, size_t count);
上面两个函数中的"buffer" 是什么时候分配出来的,分配在什么地方,是内核分配的吗? 那位好心人解释下,刚接触驱动不久! 找一下那几个函数的具体应用的例子不就知道了。 这个具体分配地方得自己找
一般都是内核里分配的 不要嵌入得太深,不可自拔啊 都是用户空间的buffer.在read中用copy_to_user().在write中用copy_from_user(). 那都是用户态传下来的。 kernel包括memory management,所以应该是由kernel分配,并由memorymanagement进行动态管理(allocation,release) buffer是指针啊。。
页:
[1]