当前位置:  技术问答>linux和unix

在proc文件系统中实现程序输入和输出,怎么实现?

    来源: 互联网  发布时间:2016-11-28

    本文导语:  想编程实现在/proc下创建一个文件,可以通过这个文件查看程序输出的一些信息 就像使用/proc/meminfo查看内存信息一样 查了很久没有找到相关资料,只找到说要写个内核模块,没有应用程序接口。 求指点 ...

想编程实现在/proc下创建一个文件,可以通过这个文件查看程序输出的一些信息
就像使用/proc/meminfo查看内存信息一样

查了很久没有找到相关资料,只找到说要写个内核模块,没有应用程序接口。

求指点

|

//你自己写个makefile了。
#include 
#include 
#include 
#include 
#include 

static char icinfobuf[BUF_MAXLEN];//你可以在其他模块中向其中写入数据了,我这里通过icinfo_copy写的

static int icinfo_read_proc(char* page,char **start, off_t off,int count,int *eof,void *data)
{
sprintf(page,"%sn",(char*)icinfobuf);
return sizeof(icinfobuf);
}

static int icinfo_write_proc(struct file* file,const char __user* buffer,unsigned long count,void *data)
{
/* no use at the moment */
return sizeof(icinfobuf);
}

void icinfo_copy(char* icinfo)
{
strcat(icinfobuf,icinfo);
}
EXPORT_SYMBOL_GPL(icinfo_copy);

static int __init procfs_icinfo_init(void)
{
struct proc_dir_entry* entry;

memset(icinfobuf,0,sizeof(icinfobuf));
entry=create_proc_entry("icinfo",S_IRWXO|S_IRWXU|S_IRWXG,NULL);

if(entry)
{
entry->read_proc=&icinfo_read_proc;
entry->write_proc=&icinfo_write_proc;
}
else
printk(": %s Create /proc/icinfo failed!n",__func__);
return 0;
}
static void __exit procfs_icinfo_exit(void)
{
remove_proc_entry("icinfo",NULL);
}
module_init(procfs_icinfo_init);
module_exit(procfs_icinfo_exit);
MODULE_LICENSE("GPL");

|
调用内核函数: create_proc_entry()等等
参考: http://bbs.chinaunix.net/viewthread.php?tid=1972121

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 想删除内核中的一个模块,输入命令后,系统提示该模块不存在。但是我lsmod时,它在/proc/modules中。求解。
  • 那个网有讨论proc或proc的资料的?
  • 为什么我的/PROC目录下没有任何东西呢
  • 请问 proc_register 能否用在普通程序里?
  • 修改proc文件系统中同时打开文件个数错误
  • proc中钩子函数被多次调用的问题
  • 怎样修改/proc下文件内容?
  • 那位大侠解释一下/proc/net/dev这个文件各个字段的含义!
  • bash script /proc/partitions取字串問題
  • 请教 文件系统/proc移植
  • 关于/proc
  • 关于/proc目录下一些文件的问题
  • 如何修改/proc/version的内容
  • /proc/kallsym 文件详解
  • Linux下如何使用oci和proc
  • /dev目录的文件和/proc/device文件的关系
  • 关于/proc/devices问题
  • 关于学习proc文件系统
  • proc entry和线程通知
  • 请教一个关于PROC中调用存储过程的问题
  • 如何读取主版的bios信息并显示出来? linux下面的/proc文件系统可以帮助完成这个功能么?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3