Scroll to navigation

outb(2) System Calls Manual outb(2)

NAZWA

outb, outw, outl, outsb, outsw, outsl, inb, inw, inl, insb, insw, insl, outb_p, outw_p, outl_p, inb_p, inw_p, inl_p - wejście/wyjście portów

BIBLIOTEKA

Standardowa biblioteka C (libc, -lc)

SKŁADNIA

#include <sys/io.h>
unsigned char inb(unsigned short port);
unsigned char inb_p(unsigned short port);
unsigned short inw(unsigned short port);
unsigned short inw_p(unsigned short port);
unsigned int inl(unsigned short port);
unsigned int inl_p(unsigned short port);
void outb(unsigned char value, unsigned short port);
void outb_p(unsigned char value, unsigned short port);
void outw(unsigned short value, unsigned short port);
void outw_p(unsigned short value, unsigned short port);
void outl(unsigned int value, unsigned short port);
void outl_p(unsigned int value, unsigned short port);
void insb(unsigned long count;
           unsigned short port, void addr[count],
           unsigned long count);
void insw(unsigned long count;
           unsigned short port, void addr[count],
           unsigned long count);
void insl(unsigned long count;
           unsigned short port, void addr[count],
           unsigned long count);
void outsb(unsigned long count;
           unsigned short port, const void addr[count],
           unsigned long count);
void outsw(unsigned long count;
           unsigned short port, const void addr[count],
           unsigned long count);
void outsl(unsigned long count;
           unsigned short port, const void addr[count],
           unsigned long count);

OPIS

Ta rodzina funkcji jest używana do wykonywania niskopoziomowych odczytów z portu i zapisów do portu. Funkcje "out*" zapisują do portu, funkcje "in*" odczytują z portu; funkcje z sufiksem "b" operują na bajtach, a z sufiksem "w" — na słowach; funkcje z sufiksem "p" czekają na zakończenie operacji wejścia/wyjścia.

Są przeznaczone głównie do użytku wewnątrz jądra, lecz mogą być też używane w warstwie użytkownika.

Aby przekazać jądru, że warstwa użytkownika chce uzyskać dostęp do żądanych portów, należy użyć ioperm(2) lub iopl(2). Błąd podczas wykonywanie tej operacji spowoduje błąd ochrony pamięci.

WERSJE

outb() i przyjaciele są zależne od sprzętu, na którym działają. Pierwszym przekazywanym argumentem jest value, a drugim — port, czyli kolejność argumentów jest odwrotna w stosunku do większości implementacji DOS-owych.

STANDARDY

Linux (x86, alpha).

ZOBACZ TAKŻE

ioperm(2), iopl(2)

TŁUMACZENIE

Tłumaczenie niniejszej strony podręcznika: Przemek Borys <pborys@dione.ids.pl>, Andrzej Krzysztofowicz <ankry@green.mf.pg.gda.pl>, Robert Luberda <robert@debian.org> i Michał Kułach <michal.kulach@gmail.com>

Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.

Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy dyskusyjnej manpages-pl-list@lists.sourceforge.net.

11 września 2026 r. Linux man-pages 6.20