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

Linux下获取CPU的实际运行速度C编程实现

    来源: 互联网  发布时间:2016-12-10

    本文导语:  高手请指点如何在Linux下获取CPU的实际运行速度C编程实现,还有CPU和内存的使用率能不能用什么命令直接从系统监控器直接调用得到,还是得访问文件proc/meminfo,再进行自己运算,能不能实时获取CPU和内存的使用率啊...

高手请指点如何在Linux下获取CPU的实际运行速度C编程实现,还有CPU和内存的使用率能不能用什么命令直接从系统监控器直接调用得到,还是得访问文件proc/meminfo,再进行自己运算,能不能实时获取CPU和内存的使用率啊,请高手指点。

|
好像这个是cpu使用率 ,前几天刚看到
http://www.gnu.org/software/libc/manual/html_node/Processor-And-CPU-Time.html#Processor-And-CPU-Time

内存使用率
http://www.gnu.org/software/libc/manual/html_node/Query-Memory-Parameters.html#Query-Memory-Parameters

|
个人觉得没必要非要自己编程,有现成的命令,自己先研究一下……
下面是我自己在网上找到的,希望能对你有所帮助。

1.     # ps -eo pid,pcpu,args | sort +1n 

该命令输出当前系统进程的pid, cpu占用率及命令描述,并以pcpu来排序(尝试过,没有成功,据说在RedHat上可行的。)

2. top -p 



不同的系统top的设置不尽相同,因此使用时需要注意。

3. prstat -p 



prstat 检查系统中进程占用CPU,内存等情况。可以代替top,不过好像solaris5.8之后才有,5.7上就没有。

4. 查看IO情况 iostat


iostat -x -I 1 若系统明显变慢,也可用此命令检查磁盘I/O情况


5. 查看CPU 可以用 psrinfo -v

查看详细信息

/usr/platform/sun4u/sbin/prtdiag -v

 6. sar

sar -u 3 20 若系统明显变慢,用此命令检查cpu占用率
sar –r 3 20 用此命令检查内存使用情况

|
system("cmd");
用上面函数调用 控制台命令

具体监控cpu命令有这些
UNIX监视命令CPU部分2009年08月18日 星期二 17:38
1.1 sar
(1)作用
   系统活动记录
(2)语法
       sar [options] [-A] [-o file] t [n] 
(3)主要参数
       -A:所有报告的总和。 
    -u:CPU利用率。
     -v:进程、I节点、文件和锁表状态。 
    -d:硬盘使用报告。 
    -r:没有使用的内存页面和硬盘块。 
    -g:串口I/O的情况。 
       -b:缓冲区使用情况。 
       -a:文件读写情况。 
       -c:系统调用情况。 
       -R:进程的活动情况。 
       -y:终端设备活动情况。 
       -w:系统交换活动。
1.2 mpstat
(1)作用
mpstat是Multiprocessor Statistics的缩写,是实时系统监控工具。其报告与CPU的一些统计信息,这些信息存放在/proc/stat文件中。在多CPUs系统里,其不但能查看所有CPU的平均状况信息,而且能够查看特定CPU的信息。
(2)语法
mpstat [-P {|ALL}] [internal [count]] 
(3)主要参数
    -P {|ALL} 表示监控哪个CPU, cpu在[0,cpu个数-1]中取值。
     internal   相邻的两次采样的间隔时间。
count     采样的次数,count只能和delay一起使用。
1.3 top
(1)作用
   显示、管理执行中的程序。 执行top指令可显示目前正在系统中执行的程序,并通过它所提供的互动式界面,用热键加以管理。
(2)语法
     top [bciqsS][d ][n ]   
(3)主要参数
    b  使用批处理模式。 
    c  列出程序时,显示每个程序的完整指令,包括指令名称,路径和参数等相关信息。 
    d  设置top监控程序执行状况的间隔时间,单位以秒计算。 
    i  执行top指令时,忽略闲置或是已成   为Zombie的程序。 
    n  设置监控信息的更新次数。 
    q  持续监控程序执行的状况。 
    s  使用保密模式,消除互动模式下的潜在危机。 
    S  使用累计模式,其效果类似ps指令的"-S"参数。     
1.4 tload 
(1) 作用
显示系统负载状况。 
(2) 语法
tload [-V][-d ][-s ][终端机编号] 
(3) 补充说明
tload指令使用ASCII字符简单地以文字模式显示系统负载状态。假设不给予终端机编号,则会在执行tload指令的终端机显示负载情形。 

     参数: 
     -d  设置tload检测系统负载的间隔时间,单位以秒计算。 
     -s  设置图表的垂直刻度大小,单位以列计算。 
-V  显示版本信息。
 

    
 
 

您可能感兴趣的文章:

  • linux不用命令方式读文件获取网络流量,如何使用C函数调用获取网络流量信息?
  • linux获取主机名后用gethostbyname() 不能获取主机ip
  • 新手问题:Linux下如何获取进程占用的系统资源
  • LINUX下获取WINDOWS用户(组)和系统服务?
  • 关于在linux获取系统软件信息
  • linux dhcpv6概率获取不到地址
  • linux 内核空间如何获取当前时间(常用格式)
  • Linux下如何获取屏幕分辨率?
  • Linux 如何获取 所有的接口信息
  • linux程序获取显示器个数
  • 怎样获取超过4G的Linux Regular文件的大下?
  • 如何获取应用程序的当前路径(Linux)
  • 急,请问Linux中如何像windows获取网络接口是否插入网线???
  • Linux下蓝牙命令.如何获取主类信息
  • linux如何获取当前程序ID并用shell脚本停止进程
  • linux /proc 的问题。以及获取子进程虚拟内存信息。
  • Linux系统下如何获取STL帮助
  • linux如何获取在浏览器或者文本编辑器中复制的内容
  • linux下如何用C语言获取不同网段上设备的MAC地址
  • linux内核层面,有什么好的获取时间的函数
  • 在linux里进行磁阵划分(连接了实际的外界磁盘阵列)时,划分出来的实际大小和配置大小不同
  • 请问linux进程的实际ID,有效ID,设置用户ID三者的定义和主要区别?
  • 对于现在的linux/unix而言,终端波特率的设置,还有实际意义么?
  • 刚接触linux,发现安装好后通过grep memtotal查询发现比实际物理内存小。
  • linux: wc -m统计字符数,为什么结果比实际多一个?
  • 如何查看LINUX的.A文件的实际内容,请问各位高手,有办法吗?
  • 各位大哥请帮忙:如何在Linux下查看实际的硬盘分区啊?
  • linux shell编程的一个实际应用问题
  • 公司实际的开发中都用linux做什么,嵌入式方面,底层的和应用那个更多些?
  • Linux里面,文件的拥有者应该是肯定会拥有R,W,X呀, 为什么实际上不是这样?
  • 我安装了个linux系统, 发现linux系统的显示器的显示有点小,于是我就在显示器上把大小调了一下,本想着这样会影响xp系统的显示效果,实际上没有应响xp的显示效果,这是为什么?
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 请问 linux 的Swap分区,对系统运行速度、网站访问速度影响大吗?它的作用和工作原理是什么呢?
  • 关于linux驱动中的中断速度问题
  • 如何提高LINUX4网卡的速度?
  • Linux 如何加快 dd 命令备份的速度呢?
  • Linux下看教程的速度
  • (100分)为什么装完Linux后Windows速度这么慢???
  • 寻找linux下载工具,下载速度快,支持断点续传
  • 为什么装上win98、2000、linux后,我运行win2000时的速度非常慢???
  • 到那下载linux的速度比较快
  • 关于LINUX上网速度的问题
  • linux可执行程序运行速度问题
  • linux下程序的启动速度问题
  • http://www.itpub.net 论坛更新数据库,速度更快,欢迎大家前去讨论unix&linux知识!
  • 咋的装了linux在窗口界面下速度很慢呀??
  • linux 下 脚本 与 二进制文件 运行速度比较
  • 求redhat linux9.0 下载的好网站,速度最好快一点的, 谢谢了!
  • SlackWare Linux8.2 速度很快、很稳定!
  • Linux下提高数据库操作速度
  • linux下,ftp傳輸速度很慢,請大家幫忙分析一下原因,來者有分
  • 关于LINUX的 I2C,高手速度进!
  • linux c/c++ IP字符串转换成可比较大小的数字
  • 在win分区上安装linux和独立分区安装linux有什么区别?可以同时安装吗?(两个linux系统)
  • linux哪个版本好?linux操作系统版本详细介绍及选择方案推荐
  • 在虚拟机上安装的linux上,能像真的linux系统一样开发linux程序么?
  • secureCRT下Linux终端汉字乱码解决方法
  • 我重装window后,把linux的引导区覆盖了,进不了linux怎么办?急啊,望热心的人帮助 (现在有linux的盘)
  • Linux c字符串中不可打印字符转换成16进制
  • 安装vmware软件,不用再安装linux系统,就可以模拟linux系统了,然后可以在其上学习一下LINUX下的基本操作 了?
  • Linux常用命令介绍:更改所属用户群组或档案属性
  • 红旗Linux主机可以通过127.0.0.1访问,但如何是连网的Win2000机器通过Linux的IP去访问Linux
  • linux命令大全详细分类介绍及常用linux命令文档手册下载


  • 站内导航:


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

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

    浙ICP备11055608号-3