专业网站建设品牌,十四年专业建站经验,服务6000+客户--广州京杭网络
免费热线:400-683-0016      微信咨询  |  联系我们

linux怎么查看一个进程的执行状态_PHP基础

当前位置:网站建设 > 技术支持
资料来源:网络整理       时间:2023/3/5 15:37:21       共计:3564 浏览

linux怎么查看一个进程的执行状态?

1,写一个服务,用exec或popen执行ps的命令行,根据该进程的名字获取该进程的pid。

sprintf(cmd, "ps -ef|grep %s ",name);

pstr=popen(cmd, "r");

然后php定时的请求这个机器上的进程状态,如果进程挂掉了,可以做个预警。

2,如果想做的更多,监视当前每个进程的资源消耗,比如CPU,内存,根据进程的id,可以去拿到/proc/pid/status中的一些数据,比如:

//获取进程占用内存

unsigned int get_proc_mem(unsigned int pid){

char FILE_name[64]={0};

FILE *fd;

char line_buff[512]={0};

sprintf(file_name,"/proc/%d/status",pid);

fd =fopen(file_name,"r");

if(nullptr == fd){

return 0;

}

char name[64];

int vmrss;

for (int i=0; i<VMRSS_LINE-1;i++){

fgets(line_buff,sizeof(line_buff),fd);

}

fgets(line_buff,sizeof(line_buff),fd);

sscanf(line_buff,"%s %d",name,&vmrss);

fclose(fd);

return vmrss;

}

然后你就可以通过一些图形做一些动态展示了。

版权说明:
本网站凡注明“广州京杭 原创”的皆为本站原创文章,如需转载请注明出处!
本网转载皆注明出处,遵循行业规范,如发现作品内容版权或其它问题的,请与我们联系处理!
欢迎扫描右侧微信二维码与我们联系。
·上一条:DNF工作室6月出招聘简章_PHP基础 | ·下一条:创建网站目录结构的基本原则是_PHP基础

Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有    粤ICP备16019765号 

广州京杭网络科技有限公司 版权所有