oracular (7) pty.7.gz

Provided by: manpages-ro_4.23.1-1_all bug

NUME

       pty - interfețe pseudo-terminale

DESCRIERE

       Un  pseudo-terminal (uneori abreviat „pty” este o pereche de dispozitive de caractere virtuale care oferă
       un canal de comunicare bidirecțional.  Un capăt al canalului se numește maestru; iar  celălalt  capăt  se
       numește sclav.

       Capătul  sclav  al pseudo-terminalului oferă o interfață care se comportă exact ca un terminal clasic. Un
       proces care  se  așteaptă  să  fie  conectat  la  un  terminal  poate  deschide  capătul  sclav  al  unui
       pseudo-terminal  și  apoi  poate fi condus de un program care a deschis capătul maestru. Tot ceea ce este
       scris la capătul maestru este furnizat procesului de la capătul sclav ca și cum ar fi o  intrare  tastată
       pe  un  terminal. De exemplu, scrierea caracterului de întrerupere (de obicei, control-C) pe dispozitivul
       principal ar determina generarea unui semnal  de  întrerupere  (SIGINT)  pentru  grupul  de  procese  din
       prim-plan  conectat  la  sclav. În schimb, tot ceea ce este scris la capătul sclav al pseudo-terminalului
       poate fi citit de procesul conectat la capătul maestru.

       Fluxul de date între maestru și sclav este gestionat în mod asincron, la fel ca  fluxul  de  date  cu  un
       terminal  fizic. Datele scrise pe sclav vor fi disponibile imediat la maestru, dar este posibil să nu fie
       disponibile imediat. În mod similar, este posibil să existe o mică întârziere de procesare între momentul
       în care se efectuează o scriere către maestru și momentul în care efectul este vizibil la sclav.

       Din  punct de vedere istoric, au evoluat două API pseudo-terminale: BSD și System V. SUSv1 a standardizat
       un API pseudo-terminal bazat pe API System V, iar acest API ar trebui să fie utilizat în toate programele
       noi care utilizează pseudo-terminale.

       Linux  oferă  atât  pseudo-terminale de tip BSD, cât și pseudo-terminale de tip System V (standardizate).
       Terminalele de tip System V sunt denumite în mod obișnuit pseudo-terminale UNIX 98 pe sistemele Linux.

       Începând cu Linux 2.6.4, pseudo-terminalele de tip BSD  sunt  considerate  demodate:  suportul  poate  fi
       dezactivat  la  compilarea  nucleului  prin  dezactivarea opțiunii CONFIG_LEGACY_PTYS; (începând cu Linux
       2.6.30, această opțiune este dezactivată în mod implicit în nucleul din linia principală de  dezvoltare).
       Pseudo-terminalele UNIX 98 ar trebui utilizate în noile aplicații.

   Pseudo-terminale UNIX 98
       Un master pseudo-terminal UNIX 98 neutilizat este deschis prin apelarea posix_openpt(3); (această funcție
       deschide dispozitivul clonă master, /dev/ptmx; a se vedea pts(4)). După efectuarea oricăror  inițializări
       specifice  programului,  modificarea  proprietății  și  a  permisiunilor  dispozitivului  sclav  folosind
       grantpt(3) și deblocarea sclavului  folosind  unlockpt(3),  dispozitivul  sclav  corespunzător  poate  fi
       deschis prin transmiterea numelui returnat de ptsname(3) într-un apel la open(2).

       Nucleul  Linux  impune  o limită a numărului de pseudo-terminale UNIX 98 disponibile. Până la Linux 2.6.3
       inclusiv, această limită este configurată în  momentul  compilării  nucleului  (CONFIG_UNIX98_PTYS),  iar
       numărul  permis  de pseudo-terminale poate fi de până la 2048, cu o valoare implicită de 256. Începând cu
       Linux 2.6.4, limita este reglabilă dinamic  prin  intermediul  /proc/sys/kernel/pty/max,  iar  un  fișier
       corespunzător,  /proc/sys/kernel/pty/nr,  indică  câte pseudo-terminale sunt utilizate în prezent. Pentru
       mai multe detalii despre aceste două fișiere, a se vedea proc(5).

   Pseudo-terminale BSD
       Pseudo-terminalele de tip BSD sunt furnizate sub formă de perechi precreate, cu nume de forma  /dev/ptyXY
       (master)  și  /dev/ttyXY  (slave),  unde X este o literă din setul de 16 caractere [p-za-e], iar Y este o
       literă din setul de 16 caractere [0-9a-f]; (gama exactă de litere  din  aceste  două  seturi  variază  în
       funcție  de  implementările  UNIX).  De  exemplu,  /dev/ptyp1  și  /dev/ttyp1  constituie  o  pereche  de
       pseudo-terminale BSD. Un proces găsește o pereche de pseudo-terminale neutilizate  încercând  să  open(2)
       fiecare  pseudo-terminal  master până când o deschidere reușește. Sclavul pseudo-terminal corespunzător (
       înlocuiește „tty” cu „pty” în numele maestrului) poate fi apoi deschis.

FIȘIERE

       /dev/ptmx
              dispozitiv clonă maestru UNIX 98

       /dev/pts/*
              dispozitive sclave UNIX 98

       /dev/pty[p-za-e][0-9a-f]
              dispozitive master BSD

       /dev/tty[p-za-e][0-9a-f]
              dispozitive sclave BSD

NOTE

       Pseudo-terminalele sunt utilizate de aplicații cum ar  fi  serviciile  de  conectare  la  rețea  (ssh(1),
       rlogin(1),  telnet(1)),  emulatoare  de  terminale  cum  ar  fi  xterm(1), script(1), screen(1), tmux(1),
       unbuffer(1) și expect(1).

       O descriere a TIOCPKT ioctl(2), care controlează  funcționarea  în  modul  pachet,  poate  fi  găsită  în
       ioctl_tty(2).

       Operațiile BSD ioctl(2) TIOCSTOP, TIOCSTART, TIOCUCNTL și TIOCREMOTE nu au fost implementate în Linux.

CONSULTAȚI ȘI

       ioctl_tty(2), select(2), setsid(2), forkpty(3), openpty(3), termios(3), pts(4), tty(4)

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⟩.