ioctl_vt(2)

NUME
ioctl_vt - controale de In/Ieș (ioctl-uri) pentru terminalul consolei și consolele virtuale

SINOPSIS
#include <linux/vt.h>  /* Definiția constantelor VT_* */
#include <sys/ioctl.h>

int ioctl(int fd, unsigned long op, void *argp);

DESCRIERE
Următoarele operații ioctl(2) specifice Linux sunt acceptate pentru terminalele consolă și consolele virtuale.

VT_OPENQRY
    Returnează prima consolă disponibilă (nedeschisă). argp indică un int care este definit la numărul de vt (1 <= *argp <= MAX_NR_CONSOLE)..

VT_GETMODE
    Obține modul vt activ. argp indică o structură

        struct vt_mode {
            char  mode;    /* modul vt */
            char  waitv;   /* dacă este activat, suspendă scrierea dacă nu este activă */
            short relsig;  /* semnal de activare la eliberarea op */
            short acqsig;  /* semnal de creștere la achiziție */
            short frsig;   /* neutilizat (definit la 0) */
        };

    care este definită la modul vt-ului activ. mode este definit la una dintre aceste valori:
    VT_AUTO | comutare automată a vt
    VT_PROCESS | procesul controlează comutarea
    VT_ACKACQ | confirmare comutare

VT_SETMODE
    Stabilește modul vt-ului activ. argp indică o structură struct vt_mode.

VT_GETSTATE
    Obține informații despre starea vt globală. argp indică o structură

        struct vt_stat {
            unsigned short v_active;  /* vt activ*/
            unsigned short v_signal;  /* semnal de trimis */
            unsigned short v_state;   /* masca de biți a vt */
        };

    Pentru fiecare vt în uz, bitul corespunzător din membrul v_state este activat. (Linux 1.0 până la Linux 1.1.92.)

VT_RELDISP
    Eliberează un afișaj.

VT_ACTIVATE
    Trece la vt argp (1 <= argp <= MAX_NR_CONSOLE).

VT_WAITACTIVE
    Așteaptă până când vt argp este activat.

VT_DISALLOCATE
    Eliberează memoria asociată cu vt argp; (începând cu Linux 1.1.54).

VT_RESIZE
    Stabilește ideea de dimensiune a ecranului pentru nucleu. argp indică o structură

        struct vt_sizes {
            unsigned short v_rows;       /* # rânduri*/
            unsigned short v_cols;       /* # coloane */
            unsigned short v_scrollsize; /* nu se mai utilizează */
        };

    Rețineți că acest lucru nu schimbă modul video „videomode”. Consultați resizecons(8). (De la Linux 1.1.54.)

VT_RESIZEX
    Definește ideea nucleului cu privire la diverși parametri ai ecranului. argp indică o structură

        struct vt_consize {
            unsigned short v_rows;  /* numărul de rânduri */
            unsigned short v_cols;  /* numărul de coloane */
            unsigned short v_vlin;  /* numărul de rânduri de
                                       pixeli pe ecran */
            unsigned short v_clin;  /* numărul de rânduri de
                                       pixeli per caracter */
            unsigned short v_vcol;  /* numărul de coloane de
                                       pixeli pe ecran */
            unsigned short v_ccol;  /* numărul de coloane de
                                       pixeli per caracter */
        };

    Orice parametru poate fi definit la zero, indicând „nicio schimbare”, dar dacă sunt definiți mai mulți parametri, aceștia trebuie să fie coerenți. Rețineți că acest lucru nu modifică modul video. Consultați resizecons(8). (Începând cu Linux 1.3.3.)

VT_GETCONSIZECSRPOS
    Obține dimensiunea consolei și poziția cursorului. argp indică către o structură

        struct vt_consizecsrpos {
            __u16 con_rows;  /* numărul de rânduri ale consolei */
            __u16 con_cols;  /* numărul de coloane ale consolei */
            __u16 csr_row;   /* rândul curent al cursorului */
            __u16 csr_col;   /* coloana curentă a cursorului */
        };

    (începând cu Linux 6.16.)

VALOAREA RETURNATĂ
În caz de succes, se returnează zero. (cu excepția cazurilor indicate) În caz de eșec, se returnează -1, iar errno este configurată pentru a indica eroarea.

ERORI-IEȘIRE

EINVAL
    argp nu este valid.

STANDARDE
Linux.

CONSULTAȚI ȘI
ioctl(2), ioctl_console(2)

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

Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 (https://www.gnu.org/licenses/gpl-3.0.html) 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.