linux中,由于用户空间和内核空间的数据不能直接交换,只有通过函数来访问。
Unsigned long copy_to_user(void *to,const void *from,unsigned long count)
Unsigned long copy_from_user(void *to,const void *from,unsigned long count)
to:数据目的缓冲区
from:数据源缓冲区
count:数据长度
值得注意的是,to、from为地址指针,引用的时候,要注意。特别是用read,write函数引用的时候,第二个参数,char *buf,也是指针。如果不是数组,例如,char buf; 那么引用的时候,要用read(fd,&buf,count),fd为文件指针。
阅读(572) | 评论(0) | 转发(0) |