Un emulador de terminal es una aplicación informática que emula o se comporta como un terminal de hardware compuesto por al menos un teclado y un monitor. Los terminales de hardware permiten el acceso a los datos y programas de software instalados o almacenados en computadoras centralizadas, a menudo denominadas mainframes. Estas computadoras especializadas suelen ser servidores equipados con grandes cantidades de memoria, alta capacidad de almacenamiento y procesadores muy rápidos y potentes para manejar múltiples solicitudes de computadoras cliente. En lugar de necesitar un monitor físico y un teclado con el propósito expreso de acceder a los recursos de una computadora central, se desarrollaron emuladores de terminal para permitir que el software ocupe el lugar del hardware.
Aplicación de terminal y TTY son términos que se utilizan para referirse a un emulador de terminal. Aunque mucha gente piensa en un emulador de terminal como sinónimo de un terminal de shell, la línea de comandos o un terminal de texto, existen ligeras diferencias en estas palabras. Por ejemplo, un shell es una aplicación real en sí misma y no solo una ventana. No presenta una interfaz gráfica de usuario (GUI), sino que el trabajo en la línea de comandos se realiza dentro de un shell. El trabajo de la línea de comandos siempre está en modo texto y no tiene GUI; técnicamente, un emulador de terminal puede ser gráfico. Cuando son gráficos, a veces se les llama ventanas de terminal.
Los terminales de hardware, en general, son menos inteligentes que sus contrapartes emuladores debido a la compleja programación empleada para desarrollarlos. La capacidad de transmitir datos a una computadora central y mostrar información de ella en la pantalla estaba disponible con terminales de hardware, pero los emuladores ofrecen aún más. A menudo se desarrollan para permitir a los usuarios automatizar tareas, enviar datos a una impresora y guardar datos en un dispositivo de almacenamiento.
Hay muchas razones por las que se utiliza un emulador de terminal en una computadora personal (PC) para acceder a recursos en computadoras centralizadas, que pueden ser locales o remotas. Los médicos y otros proveedores de atención médica a menudo necesitan acceder a los resultados de las pruebas de laboratorio de un paciente. Por lo general, esos resultados se almacenan en la computadora central del laboratorio, a la que se puede acceder desde las computadoras utilizadas por el proveedor de atención médica si se instala un emulador de terminal. Las grandes empresas con cientos de empleados a menudo utilizan emuladores de terminal instalados en las PC en los escritorios de sus empleados para permitirles acceder a información y software que a veces solo está disponible en una computadora central.
Los administradores de Linux y Unix utilizan con frecuencia emuladores de terminal para acceder a varias computadoras, como un servidor web o de Protocolo de transferencia de archivos (FTP). Los usuarios de PC experimentados del sistema operativo Linux para el escritorio a veces usan emuladores de terminal para acceder al sistema debajo de la GUI porque algunas operaciones se pueden realizar solo en, o se realizan mejor en, una línea de comando. Básicamente, cualquier persona que desee acceder a los datos y utilizar los recursos de una computadora centralizada necesitará un terminal de hardware o un emulador de terminal.