资源简介
在linux中实现一个命令执行程序doit,它执行命令行参数中的命令,之后统计
1)命令执行占用的CPU时间(包括用户态和系统态时间,以毫秒为单位),
2)命令执行的时间,
3)进程被抢占的次数,
4)进程主动放弃CPU的次数,
5)进程执行过程中发生缺页的次数
代码片段和文件信息
#include
#include
#include
#include
#include
#include
#include
void printHelpInfo(){
printf(“命令执行程序doit,它执行命令行参数中的命令,之后统计:\n“);
printf(“1)命令执行占用的CPU时间(包括用户态和系统态时间,以毫秒为单位),\n“);
printf(“2)命令执行的时间,\n“);
printf(“3)进程被抢占的次数,\n“);
printf(“4)进程主动放弃CPU的次数,\n“);
printf(“5)进程执行过程中发生缺页的次数\n“);
printf(“命令格式: doit programName [parameter1] [parameter2] ..\n“ );
printf(“例如;:doit ls -l\n“);
}
extern int errno;
int main(int argc char*argv[]){
printf(“输入doit -h 获取帮助\n“);
if(argc<2){
printHelpInfo();
}else if(strcmp(“-h“argv[1])==0){
printHelpInfo();
}else{
//准备命令参数
char command[200];
strcpy(commandargv[1]);
int i;
for( i=2;i strcat(command“ “);
strcat(commandargv[i]);
}
//获取程序执行的时间
struct timeval startend;
gettimeo
评论
共有 条评论