Once a DMA transfer has been initiated why is it important t

Once a DMA transfer has been initiated, why is it important that data being transferred not be modified during this period? Suppose that the keyboard device stored keystrokes in a buffer until it was full then sent the entire buffer for processing. What would be some adverse consequences? Suppose an application program has initiated a DMA transfer from an I/O device, why does the I/O device controller interrupt the CPU when it\'s complete? Describe how the computer uses interrupts to control the flow of data to the printer.

Solution

1) If the data transfered is being modified during the process, the interrupt has to be called and if again and again interupt has been called whether for modification of data or any other reason the data transfering will take to much processor time for context switching.

2) The logic for keystroke is lesser the keystroke the more efficient the program, and if the keystroke are stored in buffer unless buffer is full then only it will be sent for processing so surely in worst case efficiency of program will decrease. eg Assume within less number of input only given by user the program will execute but buffer\'s not full the execution has to wait for the buffer to get full and then only the processing will take place.

3) The i/o device controller use to check i/o device queue (i/o buffer) whether there are remaining i/o request in the buffer or not. If yes the i/o request is served .

4)

 Once a DMA transfer has been initiated, why is it important that data being transferred not be modified during this period? Suppose that the keyboard device st

Get Help Now

Submit a Take Down Notice

Tutor
Tutor: Dr Jack
Most rated tutor on our site