Linux中国  设为主页
 收藏本站
 
当前位置: > 首页 ->Linux技术 ->入门与提高 ->Linux下获得CPU利用率和内存使用情况
  相关分类: 
入门与提高
系统管理
网络应用
嵌入式系统
内核研究
服务器相关
发行版专区
Linux程序设计
Linux安全
BSD相关
桌面应用
  站内搜索: 
热门文章排行
热门文章排行 新手入门 Linux菜鸟必学的60个命令(04-11)
Linux操作系统下安装QQ最简单的方法(04-11)
即时通讯无界限 LumaQQ的安装和使用(04-11)
Linux 2.6.19.x内核编译配置选项简介(05-09)
Linux版本大全,Linux发行版知多少。(05-06)
精采文章排行
精采文章排行 Ubuntu 7.10扩展Linux系统的多媒体应(01-07)
新手学堂:Samba服务器安装配置过程(01-07)
最简单的Linux系统上的pptpd服务器安(01-07)
新手看招:Linux系统的股票行情分析(01-07)
新手学堂:Linux系统的开机程序执行(01-07)
  ·新手学堂:Samba服务器安装配置过程介绍 ·最简单的Linux系统上的pptpd服务器安装 ·新手看招:Linux系统的股票行情分析软件 ·新手学堂:Linux系统的开机程序执行顺序 ·在Linux操作系统下安装杀毒软件AntiVir ·利用Boot Manager让Vista与Linux双启动 ·如何制作Ubuntu Linux操作系统的本地源 ·2007年度开源10大事件微软起诉Linux居首 ·Ubuntu7.10性能大幅提升要与Vista决高下

Linux下获得CPU利用率和内存使用情况

作者:Webmaster   来源:赛迪网技术社区    点击:   日期:2007-04-27 [收藏] [投稿]

  IE是否经常中毒?推荐您

在Linux中如果要监视一个进程的运行情况,如查看它的CPU使用效率和内存使用情况,就需要从系统的/proc目录的读取一些系统信息。然后分析得到结果,特别是在嵌入式中的应用程序这个功能就很重要。本文中的代码是从top命令的源代码分析中获得,并做了部分修改,在FC6+GCC4.1调试通过。从这个工程中我也获得一些感悟。

  1. Linux系统很优雅,如果在Windows中做这个功能就需要调用ActiveX控件。而在Linux中只需要读取文本。

  2.想完成什么功能,如果不知道怎么做,就想有没有没有其它的软件有这个功能,如果有,查看它的源代码就可以了,然后定制自己需要的功能。

  3.多想多看多做,学习技术的不二法门。

  top命令源代码下载:http://www.groupsys.com/top/download.shtml
  工程下载: http://www.cppblog.com/Files/dyj057/mytop.zip
  下面是获得系统CPU和内存情况的代码:

void
get_system_info(info)
    
struct  system_info  * info;
{
    
char  buffer[ 4096 + 1
];
    
int
 fd, len;
    
char   *
p;
    
int
 i;

    
/*  get load averages  */

    {
    fd 
=  open( " loadavg " , O_RDONLY);
    len 
=  read(fd, buffer,  sizeof (buffer) - 1
);
    close(fd);
    buffer[len] 
=   ' \0 '
;

    info
-> load_avg[ 0 =  strtod(buffer,  &
p);
    info
-> load_avg[ 1 =  strtod(p,  &
p);
    info
-> load_avg[ 2 =  strtod(p,  &
p);
    p 
=  skip_token(p);            

 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<

上一页12 3 4 下一页

上一篇:开源安全技术逐步迈入中国企业级市场   下一篇:Linux系统Root用户密码丢失怎么办?
文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论

   相关文章:
·Ubuntu 7.10扩展Linux系统的多媒体应用

   文章评论:(1条)
  
 请留名: 匿名评论   点击查看所有评论 论坛讨论
 

 声明:刊登此文章是为了传递更多信息,文章内容仅供参考,转载请注明出处。