Q 1. Suppose we have a 1.5-GHz CPU to which the following three I/O devices are connected:

 

  1. Flash drive that can transfer data in 32-byte chunks with a maximum transfer rate of 16 MB/sec
  2. DVD drive which can transfer data in 16-byte chunks with a maximum transfer rate of 16 MB/sec
  3. Joystick that needs to be polled 50 times per second

 

Polling requires 300 instructions for each I/O device. Students are required to compute the percentage of CPU time required to poll each device.

 

Q 2. Instead of polling, we want to use interrupts for handling the DVD drive. Keeping in view the DVD drive to be active only 12% of the time, you are required to compute the percentage of CPU time for handling it.

 

Note: Interrupt and polling requires the same amount of instructions.

Views: 438

Replies to This Discussion

Idea for question 1

Assume that three I/O devices are connected to a 32-bit, 10 MIPS CPU. The first device is a hard drive with a maximum transfer rate of 1MB/sec. It has a 32-bit bus. The second device is a floppy drive with a transfer rate of 25KB/sec over a 16-bit bus, and the third device is a keyboard that must be polled thirty times per second. Assuming that the polling operation requires 20 instructions for each I/O device, determine the percentage of CPU time required to poll each device.

Solution:
The hard drive can transfer 1MB/sec or 250 K 32-bit words every second. Thus, this hard drive should be polled using at least this rate.

Using 1K=210, the number of CPU instructions required would be

250 x 210 x 20 = 5120000 instructions per second.

Percentage of CPU time required for polling is
(5.12 x 106)/ (10 x106) = 51.2%

The floppy disk can transfer 25K/2= 12.5 x 210 half-words per second. It should be polled with at least this rate. The number of CPU instructions

required will be 12.5 x 210 x 20 = 256,000 instructions per second.

Therefore, the percentage of CPU time required for polling is

(0.256 x 106)/ (10 x 106) = 2.56%.

For the keyboard, the number of instructions required for polling is

30 x 20 = 600 instructions per second.

Therefore, the percentage of CPU time spent in polling is

600 / (10 x 106) = 0.006%

It is clear from this example that while it is acceptable to use polling for a keyboard or a floppy drive, it is very risky to use polling for the hard drive. In general, for devices with a high data rate, the use of polling is not adequate.

CS501

Attachments:

jazakALLAH Khair for sharing :)

JazakALLAH bro :)

Salam, bro: GDBs CS501 & 502 ka solution hy

RSS

Discussion Forum

CS501 Finalterm Papers from 1st Sep to 13th Sep, 2018

Started by + caмe4ѕтυdιeѕ.
Last reply
by + caмe4ѕтυdιeѕ Sep 6. 3 Replies

CS501 GDB Last Date: 8th Aug, 2018

Started by + caмe4ѕтυdιeѕ.
Last reply
by + caмe4ѕтυdιeѕ Aug 8. 1 Reply

CS501 Assign # 3 Due Date: 23rd July, 2018

Started by + caмe4ѕтυdιeѕ.
Last reply
by + caмe4ѕтυdιeѕ Aug 8. 6 Replies

CS501 Assign # 2 Due Date: 31st May, 2018

Started by + caмe4ѕтυdιeѕ.
Last reply
by + caмe4ѕтυdιeѕ May 30. 1 Reply

SPONSORED LINKS

© 2018   Created by Muhammad Anwar Tahseen.   Powered by

Badges  |  Report an Issue  |  Terms of Service