终端(英语:Computer terminal),是一台电脑或者计算机系统,用来让用户输入数据,及显示其计算结果的机器。终端有些是全电子的,也有些是机电的。其又名终端机,它与一部独立的电脑不同。
基本介绍
- 中文名:终端
- 外文名:Computer terminal
- 领域:通信技术
历史
终端其实就是一种输入输出设备,相对于计算机主机而言属于外设,本身并不提供运算处理功能。早期的计算机终端一般是机电的电传打字机,比如ASR33。但是对于大多数套用来说它们太慢了。1970年代初许多电脑公司认识到电视输入终端比穿孔卡片要好得多,而且可以使得计算机更加容易与用户互动,产生新的套用。当时的毛病在于相对于当时的小型计算机来说要显示一页文字所需要的记忆体太大了。在积体电路普及以前要显示电视信号所需要的速度对当时的逻辑门所提出的技术挑战也太高了。当时有一家公司宣布要生产一台价值15,000美元的视频终端,吸引了许多购户,但是最后它的工程师们决定这个计画无法完成。另一个解决方法是泰克公司发明的存储管,这台机器可以显示输出给它的信息,但是无法刷新。
图1.约1982年左右的一台ASCII视频终端

早期的视频终端使用特别的逻辑门,没有自己的中央处理器。发展微处理器的动机之一就是要简化终端里的电子组件的複杂性。大多数终端的萤幕是绿色或者橙色的,它们与大型计算机相连。典型的终端使用RS-232之类的串列数据通信与主机相连,IBM使用它自己的系统网路体系结构协定通过同轴电缆来连线其主机与终端。
后来所谓的智慧型终端(如VT52和VT100)被引入。今天依然有许多这两个终端的模拟软体。这些终端之所以被称为“智慧型”是因为它们理解转义序列,可以定位游标和控制显示位置。重要的非VT100终端有IBM 3270、不同的慧智模型和Tektronix 4014。1970年代里世界上有十数个终端生产商,大多数终端的指令不兼容。1970年代和1980年代初最重要的终端生产商有迪吉多、慧智、Televideo、利尔·西格勒公司和Heathkit。
早期的IBM个人计算机虽然也使用绿色的显示屏,但是它不算终端。个人计算机的显示屏不包括任何产生字母的硬体,所有的视频信号是在个人计算机的显示卡里产生的。但是使用相应的模拟程式一台个人计算机可以与大型计算机相连模拟终端。最后使用微处理器的个人计算机大大地取消了对终端的需要。今天大多数个人计算机的Telnet用户端提供最普遍的终端(一般VT100)的模拟。
图形终端
有些终端不但可以显示文字,而且可以显示矢量图形和点阵图。计算机向终端输出绘图指令,终端则向计算机输送用户输入(通过键盘或者定位设备)。
事实上今天过去简单的图形终端已经完全被全功能视频显示器代替了。今天在计算机中图形用户界面无处不在。大多数终端模拟程式是在图形环境内运行的。
X终端是专门给X Window系统设计的图形终端,提供连线到伺服器系统上运行的KDE、GNOME或其它基于X Window系统的平台的可能性。
目前
由于个人电脑的普及今天已经很少有专门的计算机终端作为界面了。现代的作业系统如Linux和BSD及其派生物使用与硬体基本无关的虚拟终端。输出系统一般是显示屏,输入系统则是键盘。
在使用X Window系统这样的图形用户界面时在萤幕上一般有多个与不同套用相关的视窗开着,而不是只有一个与一个单个过程相连的文字流。在这种情况下用户一般使用终端模拟程式。这样用户可以不必使用专门的终端装置来与计算机交换。
技术讨论
一个程式最简单的使用终端的方法是向终端串列写或读文字。输出的文字向上推,因此只有最后的数行可见。输入的文前缀先被暂时贮存,在获得回车键后程式获得整个输入的文字。在这种情况下程式不需要很了解终端。
对于许多互动程式来说这个方法不够,一个普遍的改善是描述命令行编辑,一般它还提供指令历史的功能。这个改善对不同互动的命令行注释器也非常有用。
更进步的终端提供“全萤幕幕”套用。这样的程式可以完全控制萤幕上的输出,还可以立刻对键盘输入做反应。这样的终端对文本编辑器、档案管理和网页浏览器这样的套用非常有用。这样的程式可以控制萤幕上文字的亮度、在文字下划线、使文字闪烁和使用特别的字母。这样的程式不但要处理简单的文字,而且还要处理可以将游标放置到萤幕上任何地方、清除萤幕部分地区、改变颜色和显示特殊字母的控制字元和转义序列。这些程式还必须能够对功能键做反应。
但是由于各种终端和它们的模拟程式使用不同的转义序列,加上许多模拟程式多少有些错误,在显示的时候往往会发生错误。此外终端和终端模拟程式一般不支持罗马字母以外的字母或者字形。这些缺点都限制了今天终端和终端模拟器的使用。而且近年来由于图形用户界面的普及终端模拟库的发展和改错的工作越来越趋停滞。