home   contributing   bugs   download   online pages  

NAME | DESCRIPTION | CONFORMING TO | SEE ALSO | COLOPHONThe Linux Programming Interface


OUTB(2)                       Linux Programmer's Manual                       OUTB(2)

NAME         top

       outb,  outw,  outl,  outsb,  outsw,  outsl,  inb,  inw, inl, insb, insw, insl,
       outb_p, outw_p, outl_p, inb_p, inw_p, inl_p - port I/O

DESCRIPTION         top

       This family of functions is used to do low-level port input and output.  The
       out* functions do port output, the in* functions do port input; the b-suffix
       functions are byte-width and the w-suffix functions word-width; the _p-suffix
       functions pause until the I/O completes.

       They are primarily designed for internal kernel use, but can be used from user
       space.

       You compile with -O or -O2 or similar.  The functions are defined as inline
       macros, and will not be substituted in without optimization enabled, causing
       unresolved references at link time.

       You use ioperm(2) or alternatively iopl(2) to tell the kernel to allow the
       user space application to access the I/O ports in question.  Failure to do
       this will cause the application to receive a segmentation fault.

CONFORMING TO         top

       outb() and friends are hardware-specific.  The value argument is passed first
       and the port argument is passed second, which is the opposite order from most
       DOS implementations.

SEE ALSO         top

       ioperm(2), iopl(2)

COLOPHON         top

       This page is part of release 3.32 of the Linux man-pages project.  A
       description of the project, and information about reporting bugs, can be found
       at http://www.kernel.org/doc/man-pages/.

Linux                                 1995-11-29                              OUTB(2)

HTML rendering created 2010-12-03 by Michael Kerrisk, author of The Linux Programming Interface

customisable
counter