Terminal Emulation - What Is It?

Years ago, before the PC revolution, people used terminals to interact directly with computers (they also submitted batch jobs on decks of punched cards or rolls of paper tape, but that's another story). A terminal has a keyboard, a display, and a communication port. The earliest terminals were Teletypes (in wide use since the late 1920s), a kind of communicating typewriter. (What's a typewriter?) By the mid-1970s, most terminals had video displays (like a PC monitor) instead of printing on paper. Typically many terminals were connected to one large computer, which all the users shared; this was called timesharing. Well-known timesharing systems included MULTICS, UNIX, RSTS/E, TOPS-10, TENEX, TOPS-20, AOS/VS, VMS, VOS, VM/CMS, and TSO; some of these are long gone, others are still popular today.

Video terminals did more than simply display incoming letters, digits, and punctuation, as a typewriter would. They also included formatting capabilities allowing for host-directed cursor positioning, erasing, highlighting, printing, coloration, forms-filling, and so forth. The formatting was accomplished by embedding escape sequences in the data stream. Of course, every kind of terminal used different different escape sequences, and over the years escape sequences became more powerful and complex.

Meanwhile, special keys began to appear on terminal keyboards: arrow keys, function keys, editing keys, and so on. Unlike the regular typewriter keys (letters, digits, punctuation), these keys did not have a one-to-one correspondence to the ASCII character set, which does not include arrows, functions, and the like, so each terminal vendor assigned differing and incompatible escape sequences to them.

The phrase terminal emulation applies to software on a personal computer that does what a specific real terminal would do:

  1. It maps terminal keys to PC keys.
  2. When you press a key, it sends what the corresponding terminal key would send.
  3. It displays incoming characters on the screen.
  4. It responds to incoming escape sequences as the real terminal would.
Point 1 is important because very few terminals have the same keyboard as a PC. The number of keys might be different, the keys might be labeled differently, and keys that are labeled the same way might have different placement. For this reason, no single mapping (of say, VT220 to PC) will please everybody. Thus most terminal emulators give you a way to change the mapping to suit your preferences.

Click Back on your Browser's Toolbar to return.