Posible duplicado:
¿Cuál es la diferencia exacta entre un 'terminal', un 'shell', un 'tty' y una 'consola'?
Siempre veo pts y tty cuando uso el who
comando pero nunca entiendo cómo son diferentes. ¿Alguien puede explicarme esto?
Posible duplicado:
¿Cuál es la diferencia exacta entre un 'terminal', un 'shell', un 'tty' y una 'consola'?
Siempre veo pts y tty cuando uso el who
comando pero nunca entiendo cómo son diferentes. ¿Alguien puede explicarme esto?
Respuestas:
Un tty es un dispositivo terminal nativo, el backend es hardware o kernel emulado.
A pty (pseudo dispositivo terminal) es un dispositivo terminal que está emulado por otro programa (ejemplo:
xterm
,screen
ossh
son tales programas). Un pts es la parte esclava de un pty .(Más información se puede encontrar en
man pty
.)Breve resumen :
Un pty es creado por un proceso a través
posix_openpt()
(que generalmente abre el dispositivo especial/dev/ptmx
), y está constituido por un par de dispositivos de caracteres bidireccionales:La parte maestra, que es el descriptor de archivo obtenido por este proceso a través de esta llamada, se usa para emular un terminal. Después de cierta inicialización, la segunda parte se puede desbloquear con
unlockpt()
, y el maestro se usa para recibir o enviar caracteres a esta segunda parte (esclavo).La parte esclava, que está anclada en el sistema de archivos como
/dev/pts/x
(el maestro puede obtener el nombre real a través deptsname()
) se comporta como un dispositivo terminal nativo (/dev/ttyx
). En la mayoría de los casos, se inicia un shell que lo utiliza como terminal de control.fuente
A
tty
es un dispositivo terminal normal (la consola en su servidor, por ejemplo).A
pts
es un esclavo de terminal psuedo (unaxterm
o unassh
conexión).man pts
tiene una descripción detallada de pseudo terminales.fuente