Scroll to navigation

OUTB(2) Manualul programatorului Linux OUTB(2)

NUME

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 In/Ieș

REZUMAT

#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 *adresa,
           unsigned long int număr);
void insw(unsigned short int port, void *adresa,
           unsigned long int număr);
void insl(unsigned short int port, void *adresa,
           unsigned long int număr);
void outsb(unsigned short int port, const void *adresa,
           unsigned long int număr);
void outsw(unsigned short int port, const void *adresa,
           unsigned long int număr);
void outsl(unsigned short int port, const void *adresa,
           unsigned long int număr);

DESCRIERE

Această familie de funcții este utilizată pentru a efectua intrări și ieșiri de nivel scăzut în porturi. Funcțiile out* realizează ieșirea portului, iar funcțiile in* realizează intrarea portului; funcțiile b-suffix au o lățime de octet, iar funcțiile w-suffix au o lățime de cuvânt; funcțiile _p-suffix fac o pauză până la finalizarea intrării/ieșirii.

Acestea sunt concepute în primul rând pentru utilizarea internă a nucleului, dar pot fi utilizate din spațiul utilizatorului.

Trebuie să compilați cu -O sau -O2 sau similar. Funcțiile sunt definite ca macrocomenzi „inline” și nu vor fi substituite fără activarea optimizării, cauzând referințe nerezolvate în momentul legării.

Folosiți ioperm(2) sau, alternativ, iopl(2) pentru a indica nucleului să permită aplicației din spațiul utilizatorului să acceseze porturile de In/Ieș în cauză. În caz contrar, aplicația va primi o eroare de segmentare.

ÎN CONFORMITATE CU

outb() și prietenii săi sunt specifici pentru dispozitivele fizice. Argumentul valoare este transmis primul, iar argumentul port este transmis al doilea, ceea ce reprezintă ordinea opusă față de majoritatea implementărilor DOS.

CONSULTAȚI ȘI

ioperm(2), iopl(2)

COLOFON -- NOTĂ FINALĂ

Această pagină face parte din versiunea 4.16 a proiectului Linux man-pages. O descriere a proiectului, informații despre raportarea erorilor și cea mai recentă versiune a acestei pagini pot fi găsite la https://www.kernel.org/doc/man-pages/.

TRADUCERE

Traducerea în limba română a acestui manual a fost creată de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>

Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă Nicio RESPONSABILITATE.

Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.

15 septembrie 2017 Linux