问一个/proc文件系统中的 read_proc_t API
想理解一下/proc文件系统,在看源代码中的include /linux/proc_fs.h文件时,看到这个声明:
typedef int (read_proc_t)(char *page, char **start, off_t off, int count, int *eof, void *data);
我想问一下这个函数声明中的各个参数是什么意思阿?
我看到<The Linux Kernel Module Programming Guide>中的解释是这样的.
1.char *page : The buffer where the data is to be inserted,if you decide to use it .
这个buffer是内核分配的 ?
2.char **start: A pointer to a pointer to characters.This is useful if you don't want to use the buffer allocated by the kernel.
没弄明白.这个参数到底该怎么使用呢?还有这句话的意思是说第一个参数可以不由内核来分配?那么谁来分配呢?
3.off_T off: The current position in the file
这里的file是指哪个?是指在/proc中刚刚创建的文件吗?
4.int count:The size of the buffer in the first argument.
5.int *eof :Write a "1" here to indicate EOF.
6.A pointer to data
最后一个参数也没弄明白是什么意思.该怎么使用呢?
[ 本帖最后由 szjrabbit 于 2009-3-4 16:24 编辑 ]
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论