time 命令

原贴:http://www.linuxdiyf.com/blog/?111420/action_viewspace_itemid_3545.html

Linux for better life! Free software free society!

time 命令

2008-07-18 09:08:44 / 个人分类:Linux C

time命令在测试程序效率的时候很有用,也很方便。
以秒为单位将一条命令执行期间所用的时间、系统时间和 time 命令的执行时间打印在标准错误中。
例如:

说明

执行命令行"command [arguments...]",命令行执行结束时在标准输出中打印执行该命令行的时间统计结果,其统计结果包含以下数据:

1)实际时间(real time): 从command命令行开始执行到运行终止的消逝时间;

2)用户CPU时间(user CPU time): 命令执行完成花费的用户CPU时间,即命令在用户态中执行时间总和;

3)系统CPU时间(system CPU time): 命令执行完成花费的系统CPU时间,即命令在核心态中执行时间总和。

其中,用户CPU时间和系统CPU时间之和为CPU时间,即命令占用CPU执行的时间总和。实际时间要大于CPU时间,因为Linux是多任务操作系统,往往在执行一条命令时,系统还要处理其它任务。

另一个需要注意的问题是即使每次执行相同命令,但所花费的时间也是不一样,其花费时间是与系统运行相关的。

例1:

            1. # time date
            2. Sun Mar 26 22:45:34 GMT-8 2006
            3. 
            4. real    0m0.136s
            5. user    0m0.010s
            6. sys     0m0.070s
            7. #

在例1中,执行命令"time date"(见第1行)。系统先执行命令"date",第2行为命令"date"的执行结果。第3-6行为执行命令"date"的时间统计结果,其中第4 行"real"为实际时间,第5行"user"为用户CPU时间,第6行"sys"为系统CPU时间。以上三种时间的显示格式均为 MMmNN[.FFF]s。

在例1中,CPU时间 = 用户CPU时间 + 系统CPU时间 = 0m0.010s + 0m0.070s = 0m0.080s,实际时间大于CPU时间,说明在date命令运行的同时,还有其它任务在运行


示例

  1. 要测量运行一个程序所需的时间,请输入:
    /usr/bin/time -p a.out

    此命令运行程序 a.out,并以由 -p 标志指定的格式将实际时间、用户时间和系统时间写入标准错误;例如:

    实际时间      10.5
    用户时间 0.3
    系统时间 3.6
  2. 要在文件中保存 time 命令信息的记录,请输入:
    /usr/bin/time a.out 2> a.time

 

你可能感兴趣的:(Date,linux,command,user,System,任务)