I/O Techniques

I/O Operations is the operation of inserting or extracting data to/from the computer system.

I/O Techniques refers to how I/O operations are executed.

There are 3 ways to perform the I/O operations (I/O Techniques):

  • Programmed I/O
    • CPU has direct control over I/O
      • Sensing Status
      • Read/Write Commands
      • Transferring data
    • CPU need to waits for I/O module to complete Operation.
    • It wastes CPU time.
  • Interrupt-Driven I/O  
    • Overcomes CPU waiting 
    • No repeated CPU Checking of device
    • I/O module interrupts when ready
  • Direct Memory Access (DMA)
    • Interrupt driven and programmed IO require active CPU intervention
      • transfer rate is limited
      • CPU is tied up
    • Interrupt driven and programmed I/O require active CPU intervention
    • Transfer rate is limited
    • CPU is tied up 
    • Additional Module (hardware) on bus
    • DMA controller takes over from CPU for I/O
    • The I/O module and main memory exchange data directly, without CPU involvement

Picture below show how the Programmed I/O works:

Programmed I/O

The picture below show how Interupt Driven I/O:

Interupt Driven I/O


Direct Memory Access is the answer to I/O techniques:
Direct Memory Access

















Comments

Popular posts from this blog

Reading and Writing Operation of SRAM

Reading & Writing Operation of DRAM

Method to Convert from Stream to Json C#