Un multiplexor de terminal puede considerarse como una versión de texto de los administradores de ventanas gráficos o como una forma de adjuntar terminales virtuales a cualquier sesión de inicio de sesión. Es un contenedor que permite ejecutar varios programas de texto al mismo tiempo y proporciona funciones que permiten al usuario utilizar los programas dentro de una única interfaz de manera productiva.
Persistencia
De manera similar a la computación en red virtual , muchos multiplexores de terminal permiten al usuario iniciar aplicaciones desde una computadora y luego volver a conectarse desde una computadora diferente y continuar usando la misma aplicación sin tener que reiniciarla. Esto hace que acceder a la misma sesión entre diferentes ubicaciones, como el trabajo y el hogar, sea simple. Estos multiplexores generalmente brindan una funcionalidad independiente de la terminal para que los usuarios puedan desconectarse y volver a conectarse usando diferentes tipos de terminal, lo que permite que las aplicaciones continúen ejecutándose sin notar el cambio de terminal.
En concreto, el multiplexor inicia una sesión (con procesos asociados) y, a continuación, o bien no le conecta ningún terminal, o bien lo conecta pero puede desconectarlo posteriormente (por ejemplo, si se pierde la conexión de red). Como la sesión no finaliza, los procesos no reciben una señal de "colgado" ( SIGHUP ) y no se terminan, por lo que siguen ejecutándose y, posteriormente, se puede (volver a)conectar un terminal a la sesión y seguir interactuando, o simplemente dejar la sesión sin conectar.
Ventanas múltiples
Se pueden crear varias sesiones de terminal, cada una de las cuales suele ejecutar una única aplicación. Las ventanas están numeradas y el usuario puede utilizar el teclado para cambiar de una a otra. Algunos emuladores de terminal con interfaz gráfica de usuario proporcionan pestañas o alguna otra funcionalidad similar. Cada ventana tiene su propio búfer de desplazamiento hacia atrás, de modo que se captura la salida incluso cuando la ventana no se muestra activamente, y ese historial se puede guardar incluso al migrar a otra computadora. Las ventanas se pueden dividir en pantalla. Si bien algunas aplicaciones de texto tienen esta funcionalidad incorporada, un multiplexor de terminal permite dividir la pantalla de cualquier aplicación junto con cualquier cantidad de otras aplicaciones.
Compartir sesión
Los multiplexores de terminal permiten que varios ordenadores se conecten a la misma sesión a la vez, lo que permite la colaboración entre varios usuarios. El mismo ordenador también puede utilizarse para realizar varias conexiones simultáneas, lo que proporciona una funcionalidad alternativa a la división de pantalla, en particular para ordenadores con varios monitores.
Implementaciones
Byobu : una utilidad de configuración y perfil para GNU Screen y tmux.
dvtm : Gestión de ventanas en mosaico para la consola. [1]
GNU Screen : el multiplexor de terminal prototípico, lanzado por primera vez en 1987.
mtm : considerado "quizás el multiplexor de terminal útil más pequeño del mundo" [2]
neercs : neercs ("screen" escrito al revés) es un programa similar a screen de GNU. Admite miniaturas de ventanas y protectores de pantalla animados gráficos. También admite el cambio de consola 3D (cambio entre consolas asignadas a las caras de un cubo) a través de la biblioteca de arte ASCII libcaca .
splitvt : utilidad de división de terminal. [3]
TD/SMP : introducido por DEC en sus terminales VT330/340 , TD/SMP era propietario y solo contaba con amplio soporte en sus propios servidores de terminales.
tmux : Un sistema similar a GNU Screen moderno, lanzado en 2007; tiene licencia BSD , permite múltiples paneles (con soporte opcional para mouse Xterm ) y tiene una interfaz de comandos programable. [4] [5] [6] tmux tenía como objetivo permitir compartir una sola ventana entre múltiples terminales, mientras que las otras ventanas en la misma sesión se mantenían completamente separadas. [7] tmux ha sido parte del sistema base de OpenBSD desde la versión 4.6 de 2009. [8]
^ Mathias Huber (21 de enero de 2009). "Vídeo: Tmux 0.6 y pantalla alternativa a GNU". Revista Linux (en alemán).
^ Uwe Vollbracht (septiembre de 2009). "Información sobre herramientas. Tmux 0.9". Revista Linux (en alemán).
^ "tmux". Archivado desde el original el 9 de enero de 2012. Consultado el 12 de enero de 2012 .
^ de Weerd, Paul (12 de julio de 2009). "Entrevista con Nicholas Marriott en tmux". Revista OpenBSD .
^ "Guía de actualización de OpenBSD 4.6". El proyecto OpenBSD . Consultado el 3 de septiembre de 2011 . tmux(1) ha pasado de ser un port a ser parte del sistema base.
^ Georg CF Greve (2003). "Gemelo". Brave GNU World . N.º 47.También en Georg CF Greve (abril de 2003). "Brave GNU World" (PDF) . Linux Magazine . N.º 29. pág. 91. Archivado desde el original (PDF) el 24 de febrero de 2012.
^ Andrea Müller (diciembre de 2003). "deskTOPia: twin. Frei von XFree" [deskTOPia: twin, libre de XFree]. LinuxUser (en alemán).
^ "¿Y qué pasa con Twin?". Archivado desde el original el 26 de febrero de 2010.