793 views
0 votes
0 votes
A hard disk with a transfer rate of 10 M bytes/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?

(A) 5.0%

(B) 1.0%

(C) 0.5%

(D) 0.1%

1 Answer

Best answer
2 votes
2 votes
Solution : D

Transfer rate =10MBps

Data to be transferred = 20KB

$\text{Duration of transfer}=\frac{20 \times2^{10}}{10 \times 2^{20}} \\=2\times 2^{-10}$

$\text{Frequency of the CPU}=600 MHz$

$\text{Clock overhead for transfer}=300+900=1200$ clock cycles.

$\text{Time for 1200 clocks} = \frac{1200}{600\times10^{6}}= 2 \times10^{-6}$ and processor is used only for this much of time. So,

$\text{Percentage of CPU time consumed}=\frac{ 2\times 10^{-6}}{ 2 \times 2^{-10}}\times 100\% \\ \approx \frac{2 \times 10^{-4}} {2 \times 10^{-3}}=0.1\%  \left(\because 2^{10} \approx 10^3\right)$
selected by

Related questions

0 votes
0 votes
0 answers
2
1 votes
1 votes
2 answers
4