Chinaunix首页 | 论坛 | 博客
  • 博客访问: 4807397
  • 博文数量: 930
  • 博客积分: 12070
  • 博客等级: 上将
  • 技术积分: 11448
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-15 16:57
文章分类

全部博文(930)

文章存档

2011年(60)

2010年(220)

2009年(371)

2008年(279)

分类: LINUX

2010-01-02 12:06:06

  我们经常会遇到一些需要读取/proc文件的东西...我们经常使用的free top ps w这些命令也正是读取的/proc文件系统,今天突然有个想法
我自己来读取/proc文件而不是用popen("free","r"),首先想到的肯定是参考free这些的源码,哈哈被我发现了,如此easy,系统已经很好的提供
了一个libproc,系统装好后,会存在一个/lib/libproc-x.x.x.so  CentOS5.3就是(3.2.7)...这个so里就包含了我们要用的各种api,可惜
遗憾的是我并没有找到系统提供给我们的头文件....  既然系统没有提供那么我们就自己动手丰衣足食了哦...
下载procps-3.2.8.tar.gz也就是libproc-x.x.x.so的源程序... 这里procps-3.2.8/proc/下的.h就是我们想要的了, .c我们
是可以删除的.因为那个so里已经有了... 
问了方便我们可以ln -s /lib/libproc-3.2.7.so  /lib/libproc.so
编译的时候如free.c就可以直接 gcc -Wall -o free -l proc

附件是我修改过之后的procps代码,我没有写Makefile  你需要什么自己编译...
ps目录下的  也可以直接  gcc -Wall -o ps  全部的.c
文件: proc.rar
大小: 146KB
下载: 下载

 

你可以在这个的基础上进一步的DIY,使得没有个源文件就是单一的源文件,根据自己的需求进一步修改....   open source就是好,我们的很多工作要做的仅仅是在现有的基础上进行一定的修改裁剪^_^

阅读(2054) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~