Esta es una característica proporcionada por casi todos, si no todos, Unix y Unix les gusta ejecutarse en hardware x86. Curiosamente, las consolas virtuales fueron introducidas por primera vez en un Unix por Microsoft Xenix a principios de los años ochenta, y también estaban disponibles en CP / M concurrente.
Esta característica se integró más tarde en AT&T SVR4 Unix, Solaris y fue prestada por BSD y Linux.
¿Por qué UNIX / Linux proporciona múltiples emuladores de terminal?
Cuando se introdujeron por primera vez, no había un entorno gráfico disponible para las máquinas que ejecutaban estas implementaciones de Unix. Si bien tener un terminal físico conectado a un servidor central de Unix a través de líneas RS232 era el estándar, conectar múltiples terminales a una PC estándar con Xenix era excesivo si el objetivo era que un solo usuario ejecutara múltiples programas interactivos simultáneamente. Los terminales virtuales proporcionaron una solución elegante y conveniente para ese problema.
Otras implementaciones de Unix luego proporcionaron la misma característica para satisfacer la misma necesidad.
Cuando los entornos gráficos, especialmente X11, se extendieron, poder ver múltiples emuladores de terminal al mismo tiempo en la misma pantalla fue una mejora significativa. Sin embargo, la función de consola virtual generalmente se mantuvo solo porque era conveniente poder cambiar a una consola si el entorno gráfico se congela o no funciona por alguna razón.
Tenga en cuenta que a las utilidades les gusta screen
y tmux
llegaron mucho más tarde que a los terminales virtuales para generalizar la misma funcionalidad. Su ventaja es que pueden usarse no solo en la consola física local, sino también en cualquier sesión, ya sea local o remota (por ejemplo telnet
, ssh
). Cuando se usan en la consola física, las consolas virtuales siguen siendo útiles, ya que son funcionales en algunas situaciones en las que screen
/ tmux
no puedo ayudar, como si X11 está congelado, o si una ventana ha capturado el foco y no lo libera.
La virtualización basada en contenedores, como las zonas de Solaris o Linux LXC, también proporciona un método para conectarse a la consola del contenedor a través zlogin -C zone
y lxc-console -t 0 -n container
respectivamente.