||This article needs additional citations for verification. (October 2009)|
A terminal emulator, terminal application, term, or tty for short, is a program that emulates a video terminal within some other display architecture. Though typically synonymous with a command line shell or text terminal, the term terminal covers all remote terminals, including graphical interfaces. A terminal emulator inside a graphical user interface is often called a terminal window.
A terminal window allows the user access to a text terminal and all its applications such as command line interfaces (CLI) and text user interface applications. These may be running either on the same machine or on a different one via telnet, ssh, or dial-up. On Unix-like operating systems, it is common to have one or more terminal windows connected to the local machine.
Terminals usually support a set of escape sequences for controlling color, cursor position, etc. Examples include the family of terminal control sequence standards known as ECMA-48, ANSI X3.64 or ISO/IEC 6429.
Early adopters of computer technology, such as banks, insurance companies, and governments, still make frequent use of terminal emulators. They typically have decades-old applications running on mainframe computers. The old "dumb" video terminals used to access the mainframe are long since obsolete; however, applications on the mainframe are still in use. Quite often, terminal emulators are the only way to access applications running on these older machines.
Terminal emulators may implement a local echo function, which may be erroneously named "half-duplex" (see Duplex (telecommunications) for information on half-duplex), or still slightly incorrectly "echoplex" (which is formally an error detection mechanism rather than an input display option).
Line-at-a-time mode/Local editing
Terminal emulators may implement local editing, also known as "line-at-a-time mode". This is also mistakenly referred to as "half-duplex". In this mode, the terminal emulator only sends complete lines of input to the host system. The user enters and edits a line, but it is held locally within the terminal emulator as it is being edited and not transmitted until the user signals (usually with the ↵ Enter key on the keyboard or a "send" button of some sort on the user interface) the completion of the line. At that point the entire line is transmitted. Of course, line-at-a-time mode implies local echo, since otherwise the user will not be able to see the line as it is being edited and constructed. However, line-at-a-time mode is independent of echo mode and does not require local echo. When entering a password, for example, line-at-a-time entry with local editing is possible, but local echo is turned off (otherwise the password would be displayed).
The complexities of line-at-a-time mode are exemplified by the line-at-a-time mode option in the TELNET protocol. To implement it correctly, the Network Virtual Terminal implementation provided by the terminal emulator program must be capable of recognizing and properly dealing with "interrupt" and "abort" events that arrive in the middle of locally editing a line.
||This section may contain original research. (January 2011)|
In asynchronous terminals data can flow in any direction at any time. In synchronous terminals a protocol controls who may send data when. IBM 3270-based terminals used with IBM mainframe computers are an example of synchronous terminals. They operate in an essentially "screen-at-a-time" mode (also known as block mode). Users can make numerous changes to a page, before submitting the updated screen to the remote machine as a single action.
Terminal emulators that simulate the 3270 protocol are available for most operating systems, for use both by those administering systems such as the z9, as well as those using the corresponding applications such as CICS.
Examples of terminals emulated
Many terminal emulators have been developed for terminals such as VT100, VT220, VT320, IBM 3270/8/9/E, IBM 5250, IBM 3179G, Data General D211, Hewlett Packard HP700/92, Sperry/Unisys 2000-series UTS60, Burroughs/Unisys A-series T27/TD830/ET1100, ADDS ViewPoint, Sun console, QNX, AT386, SCO-ANSI, SNI 97801, Televideo, and Wyse 50/60. Additionally, programs have been developed to emulate other terminal emulators such as xterm and assorted console terminals (e.g., for Linux). Finally, some emulations simply refer to a standard, such as ANSI. Such programs are available on many platforms ranging from DOS and Unix to GUI operating systems such as Windows and Macintosh, to embedded operating systems found in cellphones and industrial hardware. Terminal emulators for Windows operating system are often called console emulators.[not in citation given][not in citation given][not in citation given]
- Bangia, Ramesh (2010). "line mode terminal". Dictionary of Information Technology. Laxmi Publications, Ltd. ISBN 978-93-8029-815-3.
- Daintith, John (2004). "echo". Oxford dictionary of computing (5th ed.). Oxford University Press. ISBN 978-0-19-860877-6.
- Miller, Philip M. (2009). TCP/IP – The Ultimate Protocol Guide. 2 – Applications, Access and Data Security. Universal-Publishers. ISBN 978-1-59942-493-4.
- Stevens, W. Richard; Wright, Gary R. (1994). TCP/IP illustrated. Addison-Wesley professional computing series. 1: The protocols. Addison-Wesley. ISBN 978-0-201-63346-7.
- Weik, Martin H. (2000). Computer Science and Communications Dictionary 1. Springer. ISBN 978-0-7923-8425-0.
|Wikimedia Commons has media related to: Terminal emulators|