Możliwa duplikat:
Jaka jest dokładna różnica między „terminalem”, „powłoką”, „tty” i „konsolą”?
Zawsze widzę pts i tty, kiedy używam whopolecenia, ale nigdy nie rozumiem, jak się różnią? Czy ktoś może mi to wytłumaczyć?
Możliwa duplikat:
Jaka jest dokładna różnica między „terminalem”, „powłoką”, „tty” i „konsolą”?
Zawsze widzę pts i tty, kiedy używam whopolecenia, ale nigdy nie rozumiem, jak się różnią? Czy ktoś może mi to wytłumaczyć?
Odpowiedzi:
Tty jest rodowitym urządzenie końcowe, backend jest albo sprzęt lub jądra emulowane.
PTY (urządzenie pseudo terminal) jest urządzenie końcowe, które są emulowane przez inny program (np xterm, screenalbo sshsą takie programy). Pkt jest częścią niewolnikiem PTY .
(Więcej informacji można znaleźć w man pty.)
Krótkie streszczenie :
Element pty jest tworzony przez proces posix_openpt()(który zwykle otwiera specjalne urządzenie /dev/ptmx) i składa się z pary dwukierunkowych urządzeń znakowych:
Część główna, która jest deskryptorem pliku uzyskanym przez ten proces w wyniku tego wywołania, służy do emulacji terminala. Po pewnej inicjalizacji drugą część można odblokować za pomocą unlockpt(), a master służy do odbierania lub wysyłania znaków do tej drugiej części (slave).
Część podrzędna, która jest zakotwiczona w systemie plików, ponieważ /dev/pts/x(prawdziwą nazwę można uzyskać przez master ptsname()) zachowuje się jak natywne urządzenie końcowe ( /dev/ttyx). W większości przypadków uruchamiana jest powłoka, która wykorzystuje ją jako terminal kontrolny.