终端,虚拟终端,伪终端-阿里云开发者社区

开发者社区> 开发与运维> 正文

终端,虚拟终端,伪终端

简介:

终端,虚拟终端和伪终端概念之间的区别是:


一、终端
英文为System Console,指的是"键盘和打印机硬件设备组合",或者是“键盘和显示器硬件设备组合”,或者是“其他的输入和输出硬件设备组合”。
System Console的定义跟操作系统和应用软件无关,只跟硬件有关。


二、虚拟终端
英文为Virtual console,指的是在BSD,UnixWare,Linux等操作系统中提供的特性,在该特性中,通过程序来模拟多个Virtual console,在每个Virtual console中都提供了“输入和输出功能”。在Linux中,提供了tty1,tty2,tty3,tty4,tty5,tty6,tty7这7个Virtual console[通过运行/sbin/getty来得到],分别由Ctrl+Alt+[F1,F2,F3,F4,F5,F6,F7]来指定,其中在具有桌面环境的Linux发行版中,X Window System在tty7上运行。
Linux中的Virtual console运行在内核层。

备注:
Virtual console的定义跟具体操作系统相关,Vitual console是BSD,UnixWare,Linux等操作系统基于和扩展于Xenix规范[3]的特定实现,而在Dos操作系统中,基于和扩展于Xenix规范的特定实现是Dos下的命令行界面,这个Dos下的命令行界面不能被称为Virtual console。


三、伪终端
英文为terminal emulator,一般是指在操作系统上运行的一个应用程序,用来模拟建立一个“输入和输出的功能界面”。比如在Windows下的Win32 console(就是cmd),在Linux下的gnome-terminal(在GNOME中),guake(在KDE中),xfce4-terminal(在Xfce中)。
Linux下的terminal emulator运行在用户层。

备注:
1)关于终端,虚拟终端,伪终端的概念界限并不是这么分明,有时候可以互相通用,比如可以用“终端”表示(终端,虚拟终端,伪终端)这3个中的任何一个
2)其实只要记住,“终端”其实就是“关于输入和输出功能的组合”而已,可以是硬件的,也可以是软件的。硬件的就有“一、终端”中所说的终端,软件的就有“'二、虚拟终端'和'三、伪终端'”中所说的终端。我们也可以定义一个具有输入和输出功能组合的图形应用程序为"xxx终端"。



本文转自神ge 51CTO博客,原文链接:http://blog.51cto.com/12218412/1891608

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章