假定一个字长为32位的CPU的主频为600MHZ。即CPU每秒产生600×106个时钟周期。硬盘使用中断I/O方式进行数据传送,其传输速率为8MBps,每次中断传输一个16字节的数据,要求没有任何数据传输被错过。每次中断的开销(包括用于中断响应和中断处理的时间)是600个时钟周期。如果硬盘仅有5%的时间进行数据传送,那么,CPU用于硬盘数据传送的时间占整个CPU时间的百分比为多少?
假定一个字长为32位的CPU的主频为600MHZ。即CPU每秒产生600×106个时钟周期。硬盘使用中断I/O方式进行数据传送,其传输速率为8MBps,每次中断传输一个16字节的数据,要求没有任何数据传输被错过。每次中断的开销(包括用于中断响应和中断处理的时间)是600个时钟周期。如果硬盘仅有5%的时间进行数据传送,那么,CPU用于硬盘数据传送的时间占整个CPU时间的百分比为多少?
【正确答案】:(1)若硬盘使用中断I/O方式进行数据传送,每次中断传输一个16字节的数据,为了没有任何数据传输被错过,CPU每秒钟应该至少执行8MB/16B=5×105次中断。
(2)每秒内用于硬盘数据传输中的时钟周期数为:5×105×600=3×108
(3)因此,CPU用于硬盘数据传送的时间占整个CPU时间的百分比为:3×108/600X106=50%。
Top