recategorized by
26,834 views
52 votes
52 votes

A hard disk with a transfer rate of $10$ Mbytes/second is constantly transferring data to memory using DMA. The processor runs at $600$ MHz, and takes $300$ and $900$ clock cycles to initiate and complete DMA transfer respectively. If the size of the transfer is $20$ Kbytes, what is the percentage of processor time consumed for the transfer operation?

  1. $5.0 \%$
  2. $1.0\%$
  3. $0.5\%$
  4. $0.1\%$
recategorized by

10 Answers

5 votes
5 votes

Transfer rate=10 MB per second

Data=20 KB=20* 2 10

So Time=(20 * 2 10)/(10 * 2 20)= 2* 10-3 =2 ms

Processor speed= 600 MHz=600 Cycles/sec

Cycles required by CPU=300+900 =1200

For DMA=1200

So time=1200/(600 *10 6)=.002 ms

 In %=.002/2*100=.1%

So (D) is correct option

4 votes
4 votes
Data transfer time= initialization time + DMA transfer time =300+900=1200 cycles

Data preparation time = time disk is taking to transfer 20KB to DMA

                                   = (20KB)/(10MBps) = 2msec or 1200000 cycles

thus CPU time consumed = (transfer time)/(prepartion time + transfer time)

                                        = [1200/(1200000+1200)] * 100

                                        =0.0999 = 0.1%
3 votes
3 votes

Transfer rate=10 MB per second

Data=20 KB=20* 2 10

So Time=(20 * 2 10)/(10 * 2 20)= 2* 10-3 =2 ms


 

Processor speed= 600 MHz=600 Cycles/sec

Cycles required by CPU=300+900 =1200

For DMA=1200

So time=1200/(600 *10 6)=.002 ms


 

 In %=.002/2*100=.1%

So (D) is correct option

Answer:

Related questions

59 votes
59 votes
4 answers
1
go_editor asked Apr 24, 2016
19,515 views
Consider the following program segment for a hypothetical CPU having three user registers $R_1, R_2$ and $R_3.$\begin{array}{|l|l|c|} \hline \text {Instruction} & \text...
35 votes
35 votes
3 answers
2
17 votes
17 votes
3 answers
4