- 35
- 0
- 约1.64千字
- 约 2页
- 2022-12-10 发布于山西
- 举报
Linux 下time 命令可以获取到一个程序的执行时间,包括程序的实际运行时间
(real time),以及程序运行在用户态的时间(user time)和内核态的时间(sys
time)。
需要注意的是,real 并不等于user+sys 的总和。real 代表的是程序从开始到
结束的全部时间,即使程序不占 CPU 也统计时间。而 user+sys 是程序占用
CPU 的总时间,因此real 总是大于或者等于user+sys 的。
例如我在上述程序中加上sleep(1):
for(i=0;i3;++i)
{
sleep(1);
fprintf(fp,%d\n,i);
}
用time 统计结果如下:
[leconte@localhost test]$ time ./test
real 0m3.025s
user 0m0.000s
sys 0m0.019s
由于执行了三次 sleep(1),real 的时间比刚才多了3s,这3s 内程序并没
有占用CPU,因此user+sys 并没有变化
下面的命令是将命令运行的时间信息输出到amp文件中
( time cmd ) 1a.txt 2amp
( time cmd ) 1a.txt 2amp
原创力文档

文档评论(0)