Re: Clarification on IO Operations

From: Gary Kato (garykato_at_aol.com)
Date: 12/29/04


Date: 29 Dec 2004 08:42:52 GMT


>How I/O ports are distiguished???
They have an I/O address just as memory locations have an address. Usually,
this address is sent out the same lines are a memory address would. What
distinguishes them is that there might be a memory/io line which signals if the
address is a memory address or an I/O port address.

>How write to a port is achieved (outb)??
In Linux, yes.

> Is Writing to port equivalent
>to writing to "registers in controllers"
Yes.

>How I/O devices assigned differnt I/O ports??
Someone decides how to decode the I/O port address in the hardware design. In
the case of the IBM PC, it was IBM that set the standard that everyone
followed. Some designs have switches to enable a board to be configured at
different addresses. Some boards use a configuration memory (usually an EEPROM)
so that the I/O port address can be software configured (of course there must
be a way somehow to do that when the I/O device is first installed).



Relevant Pages

  • Re: IRQL Issues
    ... I/O Port 0x00000000-0x00000CF7 Direct memory access controller ... I/O Port 0x000003C0-0x000003DF ULi AGP v3.0 Controller ... Memory Address 0xD0000000-0xDFFFFFFF ULi AGP v3.0 Controller ... Memory Address 0xD0000000-0xDFFFFFFF NVIDIA GeForce 6600 GT ...
    (microsoft.public.windowsxp.help_and_support)
  • Re: IRQL Issues
    ... I/O Port 0x00000000-0x00000CF7 Direct memory access controller ... I/O Port 0x000003C0-0x000003DF ULi AGP v3.0 Controller ... Memory Address 0xD0000000-0xDFFFFFFF ULi AGP v3.0 Controller ... Memory Address 0xD0000000-0xDFFFFFFF NVIDIA GeForce 6600 GT ...
    (microsoft.public.windowsxp.help_and_support)
  • Re: IRQL Issues
    ... I/O Port 0x00000000-0x00000CF7 Direct memory access controller ... I/O Port 0x000003C0-0x000003DF ULi AGP v3.0 Controller ... Memory Address 0xD0000000-0xDFFFFFFF ULi AGP v3.0 Controller ... Memory Address 0xD0000000-0xDFFFFFFF NVIDIA GeForce 6600 GT ...
    (microsoft.public.windowsxp.help_and_support)
  • Re: is NULL-checking redundant in accessor-functions?
    ... >> The standard says so. ... What happens if you run this code in an environment without any memory ... Can depend on what was last written to that I/O port. ... control structures, possibly causing damage to input files, if your OS ...
    (comp.lang.c)