Provided by: manpages-fr-dev_3.57d1p1-1_all bug

NOM

       outb,  outw,  outl,  outsb, outsw, outsl, inb, inw, inl, insb, insw, insl, outb_p, outw_p,
       outl_p, inb_p, inw_p, inl_p - Lire/Écrire sur un port

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 valeur, unsigned short int port);
       void outb_p(unsigned char valeur, unsigned short int port);
       void outw(unsigned short int valeur, unsigned short int port);
       void outw_p(unsigned short int valeur, unsigned short int port);
       void outl(unsigned int valeur, unsigned short int port);
       void outl_p(unsigned int valeur, unsigned short int port);

       void insb(unsigned short int port, void *addr,
                  unsigned long int compte);
       void insw(unsigned short int port, void *addr,
                  unsigned long int compte);
       void insl(unsigned short int port, void *addr,
                  unsigned long int compte);
       void outsb(unsigned short int port, const void *addr,
                  unsigned long int compte);
       void outsw(unsigned short int port, const void *addr,
                  unsigned long int compte);
       void outsl(unsigned short int port, const void *addr,
                  unsigned long int compte);

DESCRIPTION

       Cette famille de fonctions est utilisée  pour  des  entrées-sorties  de  bas  niveau.  Les
       fonctions  out* effectuent une écriture sur un port alors que les fonctions in* effectuent
       une lecture. Les fonctions suffixées avec « b » travaillent sur des octets alors  que  les
       fonctions  suffixées  avec  « w »  travaillent  sur des mots. Les fonctions suffixées avec
       « _p » attendent que les entrées-sorties soient achevées.

       Elles ont principalement été conçues pour un usage interne au noyau, mais sont quand  même
       utilisables avec des processus utilisateurs.

       Le  programme  doit  être  compilé avec les options -O ou -O2 ou équivalent. Ces fonctions
       sont en réalité des macros développées en ligne, et ne seront pas substituées sans valider
       l'optimisation.  Cela  causerait  des  erreurs  de  références  non  résolues au moment de
       l'édition des liens.

       Utiliser  ioperm(2)  ou  éventuellement  iopl(2)  pour  demander  au   noyau   d'autoriser
       l'application  à  accéder  aux  ports d'entrées-sorties en question. Une omission de cette
       étape déclencherait une faute de segmentation.

CONFORMITÉ

       outb() et les autres fonctions dépendent du matériel. Les arguments port  et  valeur  sont
       dans l'ordre inverse de la plupart des implémentations équivalentes sous DOS.

VOIR AUSSI

       ioperm(2), iopl(2)

COLOPHON

       Cette  page  fait partie de la publication 3.57 du projet man-pages Linux. Une description
       du projet et des  instructions  pour  signaler  des  anomalies  peuvent  être  trouvées  à
       l'adresse http://www.kernel.org/doc/man-pages/.

TRADUCTION

       Depuis    2010,    cette   traduction   est   maintenue   à   l'aide   de   l'outil   po4a
       <http://po4a.alioth.debian.org/> par l'équipe de traduction francophone au sein du  projet
       perkamon <http://perkamon.alioth.debian.org/>.

       Christophe    Blaess    <http://www.blaess.fr/christophe/>   (1996-2003),   Alain   Portal
       <http://manpagesfr.free.fr/>  (2003-2006).  Julien  Cristau  et  l'équipe  francophone  de
       traduction de Debian (2006-2009).

       Veuillez     signaler     toute     erreur     de     traduction     en     écrivant     à
       <debian-l10n-french@lists.debian.org>  ou  par  un  rapport  de  bogue   sur   le   paquet
       manpages-fr.

       Vous  pouvez  toujours  avoir  accès  à la version anglaise de ce document en utilisant la
       commande « man -L C <section> <page_de_man> ».