終端
![本页使用了标题或全文手工转换](http://upload.wikimedia.org/wikipedia/commons/thumb/c/cd/Zh_conversion_icon_m.svg/35px-Zh_conversion_icon_m.svg.png)
![](http://upload.wikimedia.org/wikipedia/commons/thumb/c/c6/Network-workgroup.svg/140px-Network-workgroup.svg.png)
終端(英語:Computer terminal),是一台電腦或者计算机系统,用来讓用户输入数据,及显示其计算结果的机器,簡而言之就是人類使用者與計算機互動的裝置。終端有些是全电子的,也有些是机电的。其又名終端機,它與一部獨立的電腦不同,但也是電腦組成的部分。
历史
[编辑]终端其实就是一种输入输出设备,相对于计算机主机而言属于外设,本身并不提供运算处理功能。早期的计算机终端一般是机电的电传打字机,比如ASR33。但是对于大多数应用来说它们太慢了,在卡片或磁帶等物理性的材料上標記好資料之後,放入計算機再印出結果,過程非常費工。1970年代初许多电脑公司认识到电视输入终端比穿孔卡片要好得多,而且可以使得计算机更加容易与用户互动,产生新的应用。当时的毛病在于相对于当时的小型计算机来说要显示一页文字所需要的内存太大了。在集成电路普及以前要显示电视信号所需要的速度对当时的逻辑门所提出的技术挑战也太高了。当时有一家公司宣布要生产一台价值15,000美元的视频终端,吸引了许多购户,但是最后它的工程师们决定这个计划无法完成。另一个解决方法是泰克公司发明的存储管,这台机器可以显示输出给它的信息,但是无法刷新。[1]
![](http://upload.wikimedia.org/wikipedia/commons/thumb/8/87/Televideo925Terminal.jpg/220px-Televideo925Terminal.jpg)
后来輸出端的顯示功能被發展出來後,早期的视频终端使用特别的逻辑门,没有自己的中央处理器。发展微处理器的动机之一就是要简化终端裡的电子元件的复杂性。大多数终端的屏幕是绿色或者橙色的,它们与大型计算机相连。典型的终端使用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系统这样的图形用户界面时在屏幕上一般有多个与不同应用相关的窗口开着,而不是只有一个与一个单个过程相连的文字流。在这种情况下用户一般使用终端模拟程序。这样用户可以不必使用专门的终端装置来与计算机交换。
![](http://upload.wikimedia.org/wikipedia/commons/thumb/8/81/AstroPrint_Cloud_Interface.jpg/220px-AstroPrint_Cloud_Interface.jpg)
技术讨论
[编辑]一个程序最简单的使用终端的方法是向终端串行写或读文字。输出的文字向上推,因此只有最后的数行可见。输入的文字首先被暂时贮存,在获得回車鍵后程序获得整个输入的文字。在这种情况下程序不需要很了解终端。
对于许多互动程序来说这个方法不够,一个普遍的改善是描述命令行编辑,一般它还提供指令历史的功能。这个改善对不同互动的命令行注释器也非常有用。
更进步的终端提供“全屏幕”应用。这样的程序可以完全控制屏幕上的输出,还可以立刻对键盘输入做反应。这样的终端对文本编辑器、文件管理和网页浏览器这样的应用非常有用。这样的程序可以控制屏幕上文字的亮度、在文字下划线、使文字闪烁和使用特别的字母。这样的程序不但要处理简单的文字,而且还要处理可以将光标放置到屏幕上任何地方、清除屏幕部分地区、改变颜色和显示特殊字母的控制字符和转义序列。这些程序还必须能够对功能键做反应。[2]
但是由于各种终端和它们的模拟程序使用不同的转义序列,加上许多模拟程序多少有些错误,在显示的时候往往会发生错误。此外终端和终端模拟程序一般不支持罗马字母以外的字母或者字形。这些缺点都限制了今天终端和终端模拟器的使用。而且近年来由于图形用户界面的普及终端模拟库的发展和改错的工作越来越趋停滞。
参考文献
[编辑]- ^ Gofton, Peter W. (1991). Mastering UNIX serial communications. Sybex. ISBN 978-0-89588-708-5.
- ^ Bolthouse, David (1996). Exploring IBM client/server computing. Business Perspective Series. Maximum Press. ISBN 978-1-885068-04-0.