OUTB
NAMESYNOPSIS
DESCRIPTION
CONFORMING TO
SEE ALSO
COLOPHON
NAME
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
SYNOPSIS
#include <sys/io.h>
unsigned
char inb(unsigned short int port);
unsigned char inb_p(unsigned short int port);
unsigned short int inw(unsigned short int
port);
unsigned short int inw_p(unsigned short int
port);
unsigned int inl(unsigned short int port);
unsigned int inl_p(unsigned short int
port);
void
outb(unsigned char value, unsigned short
int port);
void outb_p(unsigned char value, unsigned
short int port);
void outw(unsigned short int value, unsigned
short int port);
void outw_p(unsigned short int value, unsigned
short int port);
void outl(unsigned int value, unsigned short
int port);
void outl_p(unsigned int value, unsigned short
int port);
void
insb(unsigned short int port, void
*addr,
unsigned long int count);
void insw(unsigned short int port, void
*addr,
unsigned long int count);
void insl(unsigned short int port, void
*addr,
unsigned long int count);
void outsb(unsigned short int port, const void
*addr,
unsigned long int count);
void outsw(unsigned short int port, const void
*addr,
unsigned long int count);
void outsl(unsigned short int port, const void
*addr,
unsigned long int count);
DESCRIPTION
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 must 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
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
COLOPHON
This page is part of release 3.69 of the Linux man-pages project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at http://www.kernel.org/doc/man−pages/.
More Linux Commands
manpages/lvmconf.8.html
lvmconf(8) - LVM configuration modifier - Linux manual page
lvmconf is a script that modifies the locking configuration in an lvm configuration file. See lvm.conf(5). OPTIONS --disable-cluster Set locking_type to the def
manpages/session-keyring.7.html
session-keyring(7) Session shared process keyring (ManPage)
The session keyring is a keyring used to anchor keys on behalf of a process. It is typically created by the pam_keyinit module when a user logs in and a link wi
manpages/penmount.4.html
penmount(4) - PenMount input driver - Linux manual page.....
penmount is an Xorg input driver for PenMount devices... The penmount driver functions as a pointer input device, and may be used as the X servers core pointer.
manpages/racoon.8.html
racoon(8) - IKE (ISAKMP/Oakley) key management daemon.......
racoon speaks the IKE (ISAKMP/Oakley) key management protocol, to establish security associations with other hosts. The SPD (Security Policy Database) in the ke
manpages/sigtrap.3pm.html
sigtrap(3pm) - Perl pragma to enable simple signal handling
The sigtrap pragma is a simple interface to installing signal handlers. You can have it install one of two handlers supplied by sigtrap itself (one which provid
manpages/XUnmapEvent.3.html
XUnmapEvent(3) - UnmapNotify event structure (Man Page).....
The structure for UnmapNotify events contains: typedef struct { int type; /* UnmapNotify */ unsigned long serial; /* # of last request processed by server */ Bo
manpages/gluSphere.3gl.html
gluSphere(3gl) - draw a sphere (Library - Linux man page)...
gluSphere draws a sphere of the given radius centered around the origin. The sphere is subdivided around the z axis into slices and along the z axis into stacks
manpages/lzmore.1.html
lzmore(1) - view xz or lzma compressed (text) files.........
xzmore is a filter which allows examination of xz(1) or lzma(1) compressed text files one screenful at a time on a soft-copy terminal. To use a pager other than
manpages/slk_color_sp.3ncurses.html
slk_color_sp(3ncurses) - curses screen-pointer extension....
This implementation can be configured to provide a set of functions which improve the ability to manage multiple screens. This feature can be added to any of th
manpages/gnutls_session_get_id.3.html
gnutls_session_get_id(3) - API function - Linux manual page
Returns the current session id. This can be used if you want to check if the next session you tried to resume was actually resumed. This is because resumed sess
manpages/newscr.3ncurses.html
newscr(3ncurses) - curses global variables - Linux man page
This page summarizes variables provided by the curses library. A more complete description is given in the curses(3X) manual page. Depending on the configuratio
manpages/sccmap.1.html
sccmap(1) - extract strongly connected components of directe
sccmap decomposes digraphs into strongly connected components and an auxiliary map of the relationship between components. In this map, each component is collap
