A given processor requires 1000 cycles to perform a context switch and start an
ID: 3662339 • Letter: A
Question
A given processor requires 1000 cycles to perform a context switch and start an interrupt handler (and the same number of cycles to switch back to the program that was running when the interrupt occurred), or 500 cycles to poll an I/O device. An I/O device attached to that processor makes 150 requests per second, each of which takes 10,000 cycles to resolve once the handler has been started. By default , the processor polls every 0.5 ms if it is not using interrupts.
a. How many cycles per second does the processor spend handling I/O from the device if interrupts are used?
b. How many cycles per second are spent on I/O if polling is used (include all polling attempts)? Assume the processor only polls during time slices when user programs are not running, so do not include any context-switch time in your calculation.
c. How often would the processor have to poll for polling to take as many cycles per second as interrupts?
Explanation / Answer
a.)
The processor polls every 0.5 ms,2000 times/s.Each polling attempt takes 500 cycles.so it spends 1,000,000 cycles per second polling.In 150 of the polling attempts,a request is waiting from the I/O device each of which takes 10,000 cycles to complete,for another 1,500,000 cycles total.Therefore the total time spent on I/O each second is 2,500,000 cycles with polling.
b)
The processor spends 1,800,000 cycles handling I/O with interrupts 1500000 are spent processing the I/O requests.this leaves 3000000 cycles/s available for polling if the processor is to spend the same total amount of time handling I/O with polling and interrupts.Each polling attempt takes 500 cycles,so the processor can do 600 polls and spend the same fraction of its time handling I/O via polling as with interrupts
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.