console_ioctl

CONSOLE_IOCTL(4)    Linux - PodrÄcznik programisty Linuksa    CONSOLE_IOCTL(4)



NAZWA
       konsolowe ioctl'e - funkcje ioctl konsoli i konsoli wirtualnych

OPIS
       Przedstawione poniżej argumenty funkcji ioctl() sÄ specyficzne dla
       Linuksa. WymagajÄ trzeciego parametru, nazywanego tu argp.

       KDGETLED
              Pobiranie stanu diod LED. argp wskazuje na zmiennÄ typu long
              int. Trzy najmniej znaczÄce bity *argp wskazujÄ aktualny stan
              diod wg schematu:

                  LED_CAP       0x04   dioda caps lock
                  LEC_NUM       0x02   dioda num lock
                  LED_SCR       0x01   dioda scroll lock


       KDSETLED
              Ustienie diod LED. Diody sÄ ustawiane odpowiednio do wartoÅci
              trzech najmniej znaczÄcych bitów argp. Jednakże jeÅli
              ustawiony jest najbardziej znaczacy bit, stan diod wraca do
              stanu normalnego: odzwierciedla stan funkcji klawiatury caps
              lock, num lock i scroll lock.

       W jÄdrach przed 1.1.54 diody odzwierciedlaÅy jedynie stan znaczników
       klawiatury, a ioctl KDGETLED/KDSETLED zmieniaÅy również stan tych
       znaczników.  Od wersji 1.1.54 diody mogÄ wyÅwietlaÄ dowolnÄ
       informacjÄ, lecz standardowo wskazujÄ stan znaczników klawiatury.  Do
       zmiany znaczników klawiatury sÅuÅ¼Ä dwa nastÄpne wywoÅania funkcji
       ioctl.


       KDGKBLED
              Pobranie wartoÅci znaczników klawiatury: CapsLock, NumLock,
              ScrollLock (znaczników, nie stanu diod). argp wskazuje na
              zmiennÄ typu char, do której zostanÄ przepisabne wartoÅci
              znaczników.  Najniższe trzy bity (maska 0x7) odzwierciedlajÄ
              stan znaczników, a trzy najniższe bity nastÄpnego bajtu (maska
              0x70) zawierajÄ domyÅlne ustawienie znaczników. (Od wersji
              1.1.54.)


       KDSKBLED
              Ustawienie wartoÅci znaczników klawiatury: CapsLock, NumLock,
              ScrollLock (znaczników, nie stanu diod). argp zawiera pożÄdany
              stan znaczników.  Trzy najniższe bity (maska 0x7) zawierajÄ
              stan znaczników, a trzy najniższe bity nastÄpnego bajtu (maska
              0x70) zawierajÄ domyÅlne ustawienie znaczników.  (Od wersji
              1.1.54.)


       KDGKBTYPE
              Pobiranie typ klawiatury. Przekazuje wartoÅÄ KB_101,
              zdefiniowanÄ jako 0x02;


       KDADDIO
              Dodanie portu we/wy jako poprawnego. Rownoważne funkcji
              ioperm(arg,1,1).


       KDDELIO
              UsuniÄcie portu we/wy z listy poprawnych portów. Równoważne
              funkcji ioperm(arg,1,0).


       KDENABIO
              WÅÄczenie dostÄpu do portów we/wy karty graficznej.
              Równoważne wywoÅaniu ioperm(0x3b4, 0x3df-0x3b4+1, 1).


       KDDISABIO
              WyÅÄczenie dostÄpu do portów we/wy karty graficznej.
              Równoważne wywoÅaniu ioperm(0x3b4, 0x3df-0x3b4+1, 0).


       KDSETMODE
              WÅÄczenie trybu tekstowego/graficznego. argp przyjmuje wartoÅÄ:

                  KD_TEXT       0x00
                  KD_GRAPHICS   0x01


       KDGETMODE
              Pobranie informacji o ustawionym trybie: tekstowy/graficzny.
              argp wskazuje na zmiennÄ typu long, której zostanie nadana
              jedna z podanych wyżej wartoÅci.


       KDMKTONE
              Wygenerowanie dźwiÄku o okreÅlonej dÅugoÅci.  Niższe 16 bitów
              argp okreÅla czas wyrażony w cyklach zegara, a wyższe 16
              bitów podaje czas trwania w milisekundach.  JeÅli czas trwania
              jest równy zeru, dźwiÄk zostaje wyÅÄczony.  Sterowanie jest
              przekazywane natychmiast.  Na przyklad, argp = (125<<16) + 0x637
              okreÅla dźwiÄk zwykle skojarzony ze znakiem Ctrl-G. (Od wersji
              0.99pl1; nie dziaÅa w 2.1.49-50.)


       KIOCSOUND
              WÅÄczenie lub wyÅÄczenie generowanie dźwiÄków. Niższe 16
              bitów argp okreÅla czas trwania w cyklach zegara (tzn. argp =
              1193180/czÄstostliwoÅÄ). JeÅli argp = 0 wówczas dźwiek zostaje
              wyÅÄczony. W każdym z przypadków sterowanie jest przekazywane
              natychmiast.


       GIO_CMAP
              Pobranie z jÄdra aktualnie obowiÄzujÄcej mapy kolorów. argp
              wskazuje na 48-bajtowÄ tablicÄ. (Od wersji 1.3.3)


       PIO_CMAP
              Zmiana domyÅlnej mapy kolorów trybu tekstowego. argp wskazuje
              na 48-bajtowÄ tablicÄ, która zawiera kolejno wartoÅci Red,
              Green i Blue dla dostÄpnych 16 kolotów ekranu: 0 brak, 255
              peÅna intensywnoÅÄ.  DomyÅlnymi kolorami sÄ, w kolejnoÅci:
              czarny, ciemnoczerwony ciemnozielony, brÄzowy, ciemnoniebieski,
              ciemnopurpurowy, ciemny niebieskozielony, jasnoszary,
              ciemnoszary, jasnoczerwony, jasnozielony, żóÅty,
              jasnoniebieski, jasnopurpurowy, jasny niebieskozielony i biaÅy.
              (Od wersji 1.3.3.)


       GIO_FONT
              Pobranie 256-znakowego fontu ekranowego w rozszerzonym formacie.
              argp wskazuje na tablicÄ 8192 bajtów. JeÅli aktualnie
              zaÅadowany font jest jednym z fontów 512-bajtowych lub jeÅli
              konsola nie jest w trybie tekstowym, funkcja powraca z kodem
              bÅÄdu EINVAL.


       GIO_FONTX
              Pobranie fontu ekranowego i zwiÄzanych z nim informacji. argp
              wskazuje na strukturÄ typu struct consolefontdesc (patrz
              PIO_FONTX). Przed wywoÅaniem funkcji, polu charcount powinna
              zostaÄ nadana wrtoÅÄ równa maksymalnej liczbie znaków, jakie
              siÄ zmieszczÄ w buforze wskazywanym przez chardata. Po
              zakoÅczeniu, charcount i charheight sÄ wypeÅniane odpowiednimi
              informacjami dotyczÄcymi aktualnie zaÅadowanego fontu, a tablica
              chardata zawiera informacje o foncie, o ile przekazana wartoÅÄ
              charcount wskazywaÅa wystarczajÄcÄ iloÅÄ miejsca; w przeciwnym
              razie bufor nie jest modyfikowany, a zmiennej errno nadawana
              jest wartoÅÄ ENOMEM. (Od wersji 1.3.1.)


       PIO_FONT
              Ustawia 256-znakowy font ekranowy. Jest on Åadowany do
              generatora znaków karty EGA/VGA. argp wskazuje 8192 bajtowÄ
              mapÄ z 32 bajtami na jeden znak.  W przypadku fontów 8xN (0 < N
              <= 32) wykorzystywane jest tylko pierwszych N bajtów. Ta
              procedura unieważnia jednoczeÅnie odwzorowanie Unicode.


       PIO_FONTX
              Ustawia font ekranowy i zwiÄzane z nim informacje na temat jego
              prezentacji.  argp wskazuje strukturÄ

              struct consolefontdesc {
                      u_short charcount;      /* liczba znaków w foncie (256 lub 512) */
                      u_short charheight;     /* liiczba wierszy w foncie (1-32) */
                      char *chardata;         /* dane fontu w postaci rozszerzonej */
              };

              JeÅli jest to konieczne, ekran zostanie odpowienio
              przeskalowany, a do odpowiednich procesów przesÅany bÄdzie
              sygnaÅ SIGWINCH.  Ta procedura unieważnia jednoczeÅnie
              odwzorowanie Unicode.


       PIO_FONTRESET
              Inicjalizuje czcionkÄ ekranowÄ, rozmiar i odwzorowanie Unicode
              do wartoÅci ustawionych podczas startu sytemu. argp nie jest
              używany, lecz powinien mieÄ wartoÅÄ NULL, aby zapewniÄ zgodnoÅÄ
              z przyszÅymi wersjami jÄdra. (Od wersji 1.3.28.)


       GIO_SCRNMAP
              Pobranie z jÄdra odwzorowania ekranu. argp wskazuje na obszar o
              rozmiarze E_TABSZ, który jest wypeÅniany danymi fontu
              sÅużÄcymi do wyÅwietlenia poszczególnych znaków. W przypadku
              gdy aktualnie zaÅadowany font zawiera wiÄcej niż 256 znaków,
              ta procedura zwraca raczej bezwartoÅciowe informacje.


       GIO_UNISCRNMAP
              Pobranie z jÄdra peÅnego odwzorowania Unicode. argp wskazuje na
              obszar o rozmiarze E_TABSZ*sizeof(unsigned short), który jest
              wypeÅniany kodami Unicode odpowiednimi dla poszczególnych
              znaków. Specjalny zestaw kodów Unicode, rozpoczynajÄcy siÄ od
              U+F000, sÅuży do reprezentacji odwzorowania ,,bezpoÅrednio na
              font'' (,,direct to font''). (Od wersji 1.3.1.)


       PIO_SCRNMAP
              ZaÅadowanie do jÄdra ,,definiowanej przez użytkownika''
              (czwartej) tabeli odwzorowujÄcej bajty na symbole ekranu
              konsoli, argp wskazuje na obszar o rozmiarze E_TABSZ.


       PIO_UNISCRNMAP
              ZaÅadowanie do jÄdra ,,definiowanej przez użytkownika''
              (czwartej) tabeli odwzorowujÄcej bajty na kody Unicode, które
              sÄ z kolei tÅumaczone na symbole ekranowe zgodnie z aktualnie
              zaÅadowanÄ tabelÄ odwzorowania Unicode-na-font.  Do
              bezpoÅredniego odwzorowania na symbole ekranowe mogÄ byÄ
              wykorzystywane specjalne kody Unicode rozpoczynajÄce siÄ od
              U+F000. (Od wersji 1.3.1.)


       GIO_UNIMAP
              Pobranie z jÄdra mapy odwzorowania Unicode-na-font. argp
              wskazuje na strukturÄ

              struct unimapdesc {
                      u_short entry_ct;
                      struct unipair *entries;
              };

              w której entries wskazujÄ na tablicÄ struktur

              struct unipair {
                      u_short unicode;
                      u_short fontpos;
              };

              (Od wersji 1.1.92.)


       PIO_UNIMAP
              ZaÅadowanie do jÄdra mapy odwzorowania Unicode-na-font. argp
              wskazuje na strukturÄ typu struct unimapdesc. (Od wersji
              1.1.92.)


       PIO_UNIMAPCLR
              Wyczyszczenie tabeli, jeÅli możliwe proponuje algorytm z
              mieszaniem (hash).

              struct unimapinit {
                      u_short advised_hashsize;  /* 0 przy braku opinii */
                      u_short advised_hashstep;  /* 0 przy braku opinii */
                      u_short advised_hashlevel; /* 0 przy braku opinii */
              };

              (Od wersji 1.1.92.)


       KDGKBMODE
              Pobranie aktualnego stanu klawiatury. argp wskazuje na zmiennÄ
              typu long, której zostanie nadana wartoÅÄ równa jednej z
              poniższych staÅych:

                  K_RAW         0x00
                  K_XLATE       0x01
                  K_MEDIUMRAW   0x02
                  K_UNICODE     0x03


       KDSKBMODE
              Ustawienie aktualnego stanu klawiatury. argp wskazuje na zmiennÄ
              typu long o wartoÅci równej jednej z powyższych staÅych.


       KDGKBMETA
              Pobranie trybu obsÅugi klawisza meta. argp wskazuje na zmiennÄ
              typu long, której zostanie nadana wartoÅÄ równa jednej z
              poniższych staÅych:

                  K_METABIT     0x03   ustawienie najwyższego bitu
                  K_ESCPREFIX   0x04   kod przedrostkowy ucieczki


       KDSKBMETA
              Ustawienie trybu obsÅugi klawisza meta. argp wskazuje na zmiennÄ
              typu long o wartoÅci równej jednej z powyższych staÅych:


       KDGKBENT
              Pobranie jednej pozycji z tabeli translacji klawiszy (kod
              klawisza (keycode) na kod akcji). argp wskazuje na strukturÄ

              struct kbentry {
                  u_char kb_table;
                  u_char kb_index;
                  u_short kb_value;
              };

              której pierwsze dwa pola majÄ nadane wartoÅci o nastÄpujÄcym
              znaczeniu: kb_table okreÅla rodzaj tabeli (0 <= kb_table <
              MAX_NR_KEYMAPS), a kb_index oznacza kod klawisza (keycode) (0 <=
              kb_index < NR_KEYS).  Polu kb_value zostaje nadany odpowiedni
              kod akcji, K_HOLE, jeÅli nie ma takiego klawisza, a K_NOSUCHMAP,
              jeÅli kb_table jest niepoprawne.


       KDSKBENT
              Nadanie wartoÅci jednej pozycji tabeli translacji. argp wskazuje
              na strukturÄ typu struct kbentry.


       KDGKBSENT
              Pobranie ÅaÅcucha znaków przypisanego klawiszowi funkcyjnemu.
              argp wskazuje na strukturÄ

              struct kbsentry {
                  u_char kb_func;
                  u_char kb_string[512];
              };

              kb_string przypisywany jest zakoÅczony znakiem NUL ÅaÅcuch
              znaków, odpowiadajÄcy kodowi akcji kb_func-tego klawisza
              funkcyjnego.


       KDSKBSENT
              Przypisuje klawiszowi funkcyjnemu ÅaÅcuch znaków. argp wskazuje
              na strukturÄ typu struct kbsentry.


       KDGKBDIACR
              Odczytanie tabeli akcentów jÄdra. argp wskazuje na strukturÄ

              struct kbdiacrs {
                  unsigned int kb_cnt;
                  struct kbdiacr kbdiacr[256];
              };

              gdzie kb_cnt oznacza liczbÄ pozycji w tablicy, z których każda
              jest strukturÄ

              struct kbdiacr { u_char diacr, base, result; };


       KDGETKEYCODE
              Odczytanie pozycji z tabeli kodów klawiszy (scan code to
              keycode).  argp wskazuje na strukturÄ

              struct kbkeycode { unsigned int scancode, keycode; };

              keycode otrzymuje wartoÅÄ odpowiedniÄ dla podanego scancode.
              (Tylko z zakresu 89 <= scancode <= 255.  Dla 1 <= scancode <=
              88, jest keycode==scancode.)  (Od wersji 1.1.63.)


       KDSETKEYCODE
              Zapisanie pozycji w tabeli kodów klawiszy jÄdra. argp wskazuje
              na strukture typu struct kbkeycode. (Od wersji 1.1.63.)


       KDSIGACCEPT
              Proces wywoÅujÄcy tÄ funkcjÄ wskazuje swÄ chÄÄ do przyjÄcia
              sygnaÅu argp, generowanego przez wciÅniÄcie odpowiedniej
              kombinacji klawiszy.  (1 <= argp <= NSIG).  (Patrz
              spawn_console() w linux/drivers/char/keyboard.c.)


       VT_OPENQRY
              Przekazanie pierwszej dostÄpnej (ale nie otwartej) konsoli. argp
              wskazuje na zmiennÄ typu int, której zostanie nadana wartoÅÄ
              równa numerowi konsoli wirtualnej (1 <= *argp <=
              MAX_NR_CONSOLES).


       VT_GETMODE
              Pobranie trybu aktywnej konsoli wirtualnej. argp wskazuje na
              struktuÄ

              struct vt_mode {
                  char mode;     /* tryb konsoli wirtualnej */
                  char waitv;    /* jeÅli ustawione, czeka przy zapisie,
                                          jeÅli nie jest aktywna */
                  short relsig;  /* sygnaÅ w przypadku zwolnienia */
                  short acqsig;  /* sygnaÅ w przypadku uzyskania */
                  short frsig;   /* niewykorzystane (równe 0) */
              };

              mode może przyjmowaÄ nastÄpujÄce wartoÅci:

                  VT_AUTO       autoamtyczne przeÅÄczanie vt
                  VT_PROCESS    przeÅÄczanie sterowane przez proces
                  VT_ACKACQ     potwierdzanie przeÅÄczenia


       VT_SETMODE
              Ustawienie trybu aktywnej konsoli wirtualnej. argp wskazuje na
              strukturÄ typu struct vt_mode.


       VT_GETSTATE
              Ustawienie globalne informacje o stanie konsoli wirtualnej. argp
              wskazuje na strukturÄ

              struct vt_stat {
                  ushort v_active;  /* aktywna konsola wirtualna */
                  ushort v_signal;  /* sygnaÅ do wysÅania */
                  ushort v_state;   /* maska bitowa konsoli wirt. */
              };

              Dla każej aktualnie używanej konsoli ustawiany jest odpowiedni
              bit w polu v_state. (JÄdra od 1.0 do 1.1.92.)


       VT_RELDISP
              Zwolnienie ekranu.


       VT_ACTIVATE
              PrzeÅÄczenie na konsolÄ argp (1 <= argp <= MAX_NR_CONSOLES).


       VT_WAITACTIVE
              Oczekiwanie na aktywacjÄ konsoli wirtualnej argp.


       VT_DISALLOCATE
              Zwolnienie pamiÄci przydzielonej dla konsoli wirtualnej argp.
              (Od wersji 1.1.54.)


       VT_RESIZE
              Zmiana wybrażenia jÄdra o rozmiarach ekranu. argp wskazuje na
              strukturÄ

              struct vt_sizes {
                  ushort v_rows;       /* liczba wierszy  */
                  ushort v_cols;       /* liczba kolumn */
                  ushort v_scrollsize; /* aktualnie nie używane */
              };

              Należy pamiÄtaÄ, że nie zmienia to trybu karty graficznej
              Patrz resizecons(8). (Od wersji 1.1.54.)


       VT_RESIZEX
              Zmiana wyobrażenia jÄdra o różnych parametrach ekranu. argp
              wskazuje na strukturÄ

              struct vt_consize {
                      ushort v_rows;          /* liczba wierszy */
                      ushort v_cols;          /* liczba kolumn */
                      ushort v_vlin;          /* liczba wierszy pikseli na ekranie */
                      ushort v_clin;          /* liczba wierszy pikseli na znak */
                      ushort v_vcol;          /* liczba kolumn pikseli na ekranie */
                      ushort v_ccol;          /* liczba kolumn pikseli na znak */
              };

              Każdy z parametrów może mieÄ wartoÅÄ zerowÄ, co oznacza ,,nie
              zmieniaÄ'', lecz jeÅli jednoczÄsnie zmienianych jest kilka
              parametrów, muszÄ one byÄ ze sobÄ zgodne. Należy pamiÄtaÄ, że
              nie zmienia to trybu karty graficznej Patrz resizecons(8). (Od
              wersji 1.3.3.)


       DziaÅanie poniższych funkcji ioctl jest zależne od wartoÅci
       pierwszego bajtu struktury wskazywanej przez argp, tutaj oznaczanego
       jako subcode.  MogÄ z nich korzystaÄ jedynie administrator i wÅaÅciciel
       aktualnej konsoli.

       TIOCLINUX, subcode=0
              Zrzut ekranu ZniknÄlo w 1.1.92. (Dla jÄdra 1.1.92 i
              późniejszych, obecnie należy zamiast tego czytaÄ z /dev/vcsN
              lub /dev/vcsaN.)


       TIOCLINUX, subcode=1
              Pobranie inforamcji o zadaniu. ZniknÄÅo w 1.1.92.


       TIOCLINUX, subcode=2
              Ustawienie zaznaczenia.  argp wskazuje na strukturÄ

                 struct {char subcode;
                     short xs, ys, xe, ye;
                     short sel_mode;
                 }

              xs i ys oznaczajÄ poczÄtkowÄ kolumnÄ i wiersz xe i ye oznaczajÄ
              koÅcowÄ kolumnÄ i wiersz.  (Górny lewy róg ma wspóÅrzÄdne
              wiersz=kolumna=1.)  sel_mode jest równe 0 w przypadku
              zaznaczania znak po znaku, 1 - sÅowo po sÅowie, lub 2 - wiersz
              po wierszu.  Zaznaczone znaki ekranowe sÄ podÅwietlone i
              zachowane w statycznej tablicy sel_buffer zdefiniowanej w
              devices/char/console.c.


       TIOCLINUX, subcode=3
              Wstawienie zanaczenia.  Znaki znajdujÄce siÄ w buforze
              zaznaczenia sÄ zapisywane do fd.


       TIOCLINUX, subcode=4
              Odtworzenie ekranu po wygaszeniu.


       TIOCLINUX, subcode=5
              WypeÅnienie 256-bitowej tablicy definujÄcej znaki w "sÅowie" dla
              zaznaczania "sÅowo-po-sÅowie". (Od wersji 1.1.32.)


       TIOCLINUX, subcode=6
              argp wskazuje na zmiennÄ typu char, której nadawana jest
              wartoÅÄ zmiennej jÄdra shift_state. (Od wersji 1.1.32.)


       TIOCLINUX, subcode=7
              argp wskazuje na zmiennÄ typu char, której nadawana jest
              wartoÅÄ zmiennej jÄdra report_mouse. (Od wersji 1.1.33.)


       TIOCLINUX, subcode=8
              Zrzucenie informacji o szerokoÅci i wysokoÅci ekranu, pozycji
              kursora i wszystkich parach znak-atrybuty. (Tylko jÄdra od
              1.1.67 do 1.1.91.  PoczÄwszy od 1.1.92 można przecztyaÄ
              wszystkie te inforamcje z /dev/vcsa*.)


       TIOCLINUX, subcode=9
              Odtworzenie rozmiaru ekranu, poÅożenia kursora i wszystkich par
              znak-atrybut.  (Tylko jÄdra od 1.1.67 do 1.1.91.  PoczÄwszy od
              jÄdra 1.1.92, można to wykonaÄ przez zapis do /dev/vcsa*.)


       TIOCLINUX, subcode=10
              ObsÅuguje funkcjÄ oszczÄdzania energii (Power Saving) monitorów
              nowej generacji. Tryb wygaszania ekranu VESA przyjmuje wartoÅÄ
              argp[1], co powoduje sterowanie wygaszaniem ekranu w sposób
              nastÄpujÄcy:

                  0: Wygaszanie ekranu jest wyÅÄczone.

                  1: Aktualne zawartoÅci rejestrów karty graficznej zostajÄ
              zachowane, nastÄpnie sterownik zostaje zaprogramowany tak, aby
              wyÅÄczyÅ impulsy synchronizacji pionowej. Powoduje to
              przestawienie monitora w tryb oczekiwania (standby). JeÅli
              monitor posiada licznik czasowy Off_Mode, wtedy może
              ewentualnie sam wyÅÄczyÄ zasilanie.

                  2: ZostajÄ zachowane aktualne ustawienia, nastÄpnie
              wyÅÄczane sÄ zarówno impulsy synchronizacji zarówno pionowej,
              jak i poziomej. Powoduje to wyÅaczenie monitora (tryb "off").
              OpcjÄ tÄ należy wybraÄ jeÅli monitor nie posiada licznika
              czasowego Off_Mode lub jeÅli chcemy aby monitor wyÅÄczyÅ siÄ
              natychmiast. (Ostrzeżenei: CzÄste wyÅÄczanie zasilania może
              uszkodziÄ monitor.)

              (Od wersji 1.1.76.)


WARTOÅÄ ZWRACANA
       Po pomyÅlnym zakoÅczeniu zwracane jest 0. Po bÅÄdzie zwracane jest -1 i
       ustawiana jest zmienna errno.

BÅÄDY
       errno może przyjmowaÄ nastÄpujÄce wartoÅci:


       EBADF  deskryptor pliku jest nieprawidÅowy.

       ENOTTY deskryptor pliku nie jest skojarzony ze specjalnym urzÄdzeniem
              znakowym lub podane polecenie nie ma do niego zastosowania.

       EINVAL deskryptor pliku lub argp jest niepoprawny.

       EPERM  naruszenie uprawnieÅ.

OSTRZEŻENIE
       Nie należy traktowaÄ tej strony podrÄcznika jak dokumentacji funkcji
       ioctl dla konsoli Linuksa. Jest ona przeznaczona dla ciekawskich jako
       alternatywa wobec czytania zródeÅ jÄdra. Funkcje ioctl sÄ
       niudokumentowanymi funkcjami wewnÄtrznymi Linuksa, które mogÄ ulec
       zmianie bez ostrzeżenia (i rzeczywiÅcie, ten dokument odzwierciedla w
       sposób mniej lub bardziej dokÅadny sytuacjÄ dla jÄdra w wersji 1.1.94;
       istnieje wiele mniej i bardziej znaczÄcych różnic w stosunku do
       poprzednich wersji.)

       Bardzo czÄsto wywoÅania funkcji ioctl sÄ wprowadzane w celu komunikacji
       pomiÄdzy jÄdrem i szczególnymi, dobrze znanymi programami (fdisk,
       hdparm, setserial, tunelp, loadkeys, selection, setfont itd.), i ich
       zachowanie zostanie zmienione, kiedy bÄdzie tego wymagaÅ któryÅ z tych
       programów.

       Programy korzystajÄce z tych wywoÅaÅ ioctl nie bÄdÄ przenoÅne na inne
       systemy Unix, nie bÄdÄ dziaÅaÄ poprawnie ze starszymi wersjami jadra
       Linuksa, ani nie bÄdÄ wspóÅpracowaÄ z przyszÅymi wersjami jÄdra.

       Należy korzystaÄ z funkcji zgodnych z POSIX.


ZOBACZ TAKŻE
       kbd_mode(1), loadkeys(1), dumpkeys(1), mknod(1), setleds(1),
       setmetamode(1), ioperm(2), execve(2), fcntl(2), termios(3), console(4),
       console_codes(4), mt(4), sd(4), tty(4), ttys(4), tty_ioctl(4), vcs(4),
       vcsa(4), charsets(7), mapscrn(8), setfont(8), resizecons(8),
       /usr/include/linux/kd.h, /usr/include/linux/vt.h



Linux                             1995-09-18                  CONSOLE_IOCTL(4)