查看命令执行时间——time命令

time命令可以统计一个程序的执行时间,可以用于评估一个程序的性能。

[root@localhost ~]# time ls
anaconda-ks.cfg install.log install.log.syslog satools

real 0m0.009s
user 0m0.002s
sys 0m0.007s

  • real时间是指挂钟时间,也就是命令开始执行到结束的时间。这个短时间包括其他进程所占用的时间片,和进程被阻塞时所花费的时间。
  • user时间是指进程在用户模式中的CPU执行时间,其他进程花费的时间和阻塞状态的时间没有计算在内。
  • sys时间是进程在内核模式中的CPU执行时间,代表进程使用系统调用所花费的CPU执行时间,这也是由进程执行而消耗的CPU执行时间。

执行模式?

操作系统在执行一个进程时,会不断的在两种模式之间切换,它们是用户模式内核模式
用户模式很好解释,就是这个进程的程序本身被运行时的运行模式。比如在程序中给反转一个字符串之类的操作,这个操作因为完全不依赖于其他系统调用,所以是在用户模式下被执行。那么当程序中有一段代码需要读取一个文件的时候,操作系统就需要切换到系统模式下执行文件读写系统调用了。

若想深入理解什么是系统调用可以阅读[Linux系统调用详解(实现机制分析)--linux内核剖析(六)](
http://blog.csdn.net/gatieme/article/details/

总结

上面ls命令的用户模式下执行时间是0.02秒,内核模式下(ls命令需要调用访问文件系统的系统调用)的执行时间是0.007秒。合计ls命令的执行时间就是0.027秒。

所以,一个程序的CPU执行时间等于user时间加上sys时间。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • linux资料总章2.1 1.0写的不好抱歉 但是2.0已经改了很多 但是错误还是无法避免 以后资料会慢慢更新 大...
    数据革命阅读 14,179评论 2 33
  • Ubuntu的发音 Ubuntu,源于非洲祖鲁人和科萨人的语言,发作 oo-boon-too 的音。了解发音是有意...
    萤火虫de梦阅读 99,756评论 9 468
  • 又来到了一个老生常谈的问题,应用层软件开发的程序员要不要了解和深入学习操作系统呢? 今天就这个问题开始,来谈谈操...
    tangsl阅读 9,598评论 0 23
  • 有些故事发生在自己人身上,有些故事发生在别人身上,有些故事却既不是发生在自己人身上,也不是发生在别人身上,发生中间...
    李一十八阅读 2,895评论 0 1
  • 今 天 不 说 故 事 , 只 讲 道 理 提问: 老师,我和我男朋友三年了,当初在一起的时候他觉得我不是适合他的...
    爱晚睡阅读 3,405评论 4 5