深入理解计算机系统阅读笔记-第九章

第九章 测量程序执行时间

9.1 计算机系统上的时间流

9.1.1 进程调度和计时器中断

计算机有一个外部计时器,它周期性地向处理器发送中断信号,操作系统调度程序可以选择继续执行当前进程,或者切换到另一个进程。典型的周期时1~10ms。

9.1.2 从应用程序的角度看时间

从应用程序角度,把时间流看成是活动的和不活动的两种时间的交替。通过抓trace可以图形化的观察程序运行状态

9.2 通过 间隔计数(interval counting)来测量时间

操作系统也用计时器(timer)来记录每个机场使用的累计时间,这种信息提供的是对程序执行时间不那么准确的测量值。

9.2.1 操作

操作系统维护着每个进程使用的用户时间量和系统时间量的计数值,当计时器中断发生时,操作系统会确定哪个进程是活动的,并且对那个进程的一个计数值增加计时器间隔时间。如果系统是在内核模式执行的,那么就增加系统时间,否则增加用户时间。

9.2.2 读进程的计时器

在Unix shell中,可以在命令行前加“time”来测量命令的执行时间。

unix> time ./helloworld

执行完成后,会打印出总结运行时间的数据:

前两个是用户和系统时间的秒数。注意这两个数字的小数点第三位都是0.计时器间隔为10ms,所有的计时都是1%秒的倍数。
第三个数字是总经过的时间,以分钟和秒的形式表示。系统和用户时间加起来是2.49s,比总经过的时间6.52s的一半还少,说明处理

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值