Input-output techniques, Computer Engineering

Assignment Help:

After going through details of device interfaces next point to be discussed is how the interface can be used to support I/O from devices. Binary information received from an external device is generally stored in memory for later processing. Information transferred from central computer in an external device initiates in memory unit. Data transfer between central computer and I/O devices can be handled in some modes. 3 techniques are possible for I/O operation. These are:

  • Programmed input/output
  • Interrupt driven input/output
  • Direct memory access

Figure below gives an general idea of these 3 techniques:

1004_INPUT-OUTPUT TECHNIQUES.png

Figure: Overview of the three Input/ Output

In programmed I/O, I/O operations are fully controlled by processor. The processor executes a program which initiates, directs and terminate an I/O operation. It needs a little special I/O hardware however is quite time consuming for processor as processor has to wait for slower I/O operations to finish. 

With interrupt driven I/O when interface decides that device is ready for data transfer it produces an interrupt request to the computer. Upon detecting external interrupt signal processor stops the task it was processing and branches to a service program to process I/O transfer and then returns to task it was initially performing that result in waiting time by the processor being reduced.

With both interrupt-driven and programmed I/O processor is responsible for extracting data from main memory for output and storing data in main memory during input. What about having a substitute where I/O device may directly store data or retrieve data from memory? This alternative is called direct memory access (DMA). In this mode I/O interface and main memory exchange data directly without involvement of processor.

2405_INPUT-OUTPUT TECHNIQUES1.png

Figure: Three techniques of I/O


Related Discussions:- Input-output techniques

Calculate traffic lost in a particular exchange, In a particular exchange d...

In a particular exchange during busy hour 1200 calls were offered to a group of trunks, during this time 6 calls were lost. The average call duration being 3 minutes Calculate Tr

Command mode using vi editor, What does the c$ command do from command mode...

What does the c$ command do from command mode using Vi Editor? Ans) C$ will start from the character under the curser till the finish of line. So when you use this command it wi

Design a 4 to 1 multiplexer, Design a 4 to 1 Multiplexer by using the three...

Design a 4 to 1 Multiplexer by using the three variable function given by F(A, B, C) = ∑ m(1,3,5,6) Ans. The given function F(A,B,C) = ∑ m(1,3,5,6) can be implemented along wit

What are the limitations of mobile devices, What are the limitations of mob...

What are the limitations of mobile devices? For mobile devices we require both PC-integrated applications and specialized mobile services quite than repurposed website content.

Operating system., what is the minimum number of page faults for an optimal...

what is the minimum number of page faults for an optimal page replacement strategy?

Evaluate personality defines, Evaluate personality defines? 1. System ...

Evaluate personality defines? 1. System calls: Linux use a software interrupts to change into kernel mode whilst other UNIX system use an inter segment jump. 2. Message n

Define categorization of parallel computers, Types Of Categorization Th...

Types Of Categorization The subsequent categorization of parallel computers has been identified: 1)  Categorization based on the instructions and data streams  2)  Catego

Processes vs threads, One might argue that in general processes are more ?e...

One might argue that in general processes are more ?exible than threads. For one thing, they can live in two different machines, and communicate via sockets; they are easy to spawn

Explain use of mpi functions with an example, Q. Explain use of MPI functio...

Q. Explain use of MPI functions with an example? include int main(int argc, char **argv) { int i, tmp, sum, s, r, N, x[100]; MPI_Init(&argc, &argv); MPI_Comm_size

Applications of linked list, What are the Applications of Linked List are ...

What are the Applications of Linked List are a) Fixed block storage allocation b) garbage collection

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd