Linux终端类型

    终端(Terminal)也称终端设备,是计算机网络中处于网络最外围的设备,主要用于用户信息的输入以及处理结果的输出等。在早期计算机系统中,由于计算机主机昂贵,因此一个主机(IBM大型计算机)一般会配置多个终端,这些终端本身不具备计算能力,仅仅承担信息输入输出的工作,运算和处理均由主机来完成。在个人计算机时代,个人计算机可以运行称为终端仿真器的程序来模仿一个终端的工作。随着移动网络的发展,移动终端(如手机、PAD)等得到了广泛的应用。此时,终端不仅能承担输入输出的工作,同时也能进行一定的运算和处理,实现部分系统功能。

Linux终端类型

 

来自 <http://baike.baidu.com/link?url=LrNxzCM9S4gFHNjDFJer4aBm_4hpwgBcNI4mzvcJZ59xnCaS-QpmLqHLmn8kEpBCrKvgnYPPYYky1bra1WhQx5dpz7WorbtvoxbGV-J7iQa>

而在Linux中有已下几类终端

物理终端

也称控制台终端(/dev/ttyn, /dev/console)

在Linux 系统中,计算机显示器通常被称为控制台终端(Console)。它仿真了类型为Linux的一种终端(TERM=Linux),并且有一些设备特殊文件与之相关联:tty0、tty1、tty2等。当你在控制台上登录时,使用的是tty1。使用Alt+[F1—F6]组合键时,我们就可以切换到tty2、 tty3等上面去。tty1 –tty6等称为虚拟终端,而tty0则是当前所使用虚拟终端的一个别名,系统所产生的信息会发送到该终端上。因此不管当前正在使用哪个虚拟终端,系统信息都会发送到控制台终端上。你可以登录到不同的虚拟终端上去,因而可以让系统同时有几个不同的会话期存在。只有系统或超级用户root可以向 /dev/tty0进行写操作,

1# tty(查看当前TTY)

/dev/tty1

2#echo "test tty0" > /dev/tty0

test tty0

 

二、虚拟终端(tty)

 

既然有物理可摸可见的终端,那么又会有用软件或协议虚拟出来的终端。虚拟终端(VT)是一种提供类似于Internet的Telnet协议的远程终端仿真的国际标准化组织(ISO)协议。在远程终端的用户,可以在远程计算机上运行应用程序,就象他们是坐在这台计算机前面一样。在Linux中默认有6个虚拟终端,进入命令快捷键Ctrl+Alt+f(1-6),分别对应相应的终端,进入终端的命令

1/dev/tty#   #{1-6}

tty1 –tty6等称为虚拟终端,

计算机生成了可选文字: [rDDt口IDcdlhost一]林ttg /deV/ttgl [root口localhost~]林

三、图形终端


Linux的后期发展,加入了图形化界面,其实就是在Xwindows模式下的伪终端。如Windows是以图形界面方式操作的,因为你可以用鼠标来点击按钮来进行操作,很直观,但效率很低,因此此类界面一般作操作不使用。关闭图形终端改为虚拟终端的命令

# systemctl  get-default

Garphical.target

systemctl  get-default multi-user.target

 

计算机生成了可选文字: ,.

 

 

四、伪终端(/dev/pty/)

 

上述登录过程,对于网络用户来说,却不能完全实用。很显然,网络用户并不需要一个串口,也不需要一个显示器,他需要的是在他的本地显示设备上,运行Linux的shell。这种网络用户被称为网络虚拟终端。以telnetd为例,它至少应该是这样子的:

Linux终端类型

图一:telnet登录假想图

 

这里,这个“某个终设备”,自然不可能是一个实际的物理终端设备,因为压根没有这样的设备。这样,伪终端的概念就被引入进来了。伪终端设备是一种特殊的终端驱动设备, 它并不驱动某个物理设备,而是用来将终端的输出定向到应用程序中进行处理。伪终端设备之所以存在是为了提供在程序控制下的一种模拟串行终端行为的方法。

 

伪终端与前面说的终端在表现形式上,最大的不同,就是它总是成对出现,而不是单一的一个。它分为“伪终端主设备(/dev/ptyMN)”和“伪终端从设备”。(/dev/ttyMN)。其中,M与N的命名方式如下:

  1. M: p q r s t      u v w x y z a b c d e 共16 个

  2. N: 0 1 2 3 4 5 6 7 8 9 a b c d      e f 共16 个

复制代码

 

这样,默认支持最大是256个。

   五、.串行端口终端(/dev/ttySn)


   串行端口终端(Serial Port Terminal)是使用计算机串行端口连接的终端设备。计算机把每个串行    端口都看作是一个字符设备。有段时间这些串行端口设备通常被称为终端设备,因为那时它的最    大用途就是用来连接终端。

   这些串行端口所对应的设备名称/dev/tts/0(/dev/ttyS0)/dev/tts/1( /dev/ttyS1)等,设号    分别是(4,0)(4,1)等,分别对应于DOS系统下的COM1COM2等。若要向一个端口发送数据,可    以在命令行上把标准输出重定向到这些特殊文件名上即可。例如,在命令行提示符下键入:echo             test > /dev/ttyS1会把单词"test"发送到连接在ttyS1(COM2)端口的设备上。

 

原创文章,作者:yangtian,如若转载,请注明出处:http://www.178linux.com/51501

(1)
yangtianyangtian
上一篇 2016-10-13 19:31
下一篇 2016-10-13 21:32

相关推荐

  • git

    1.1 Git的安装 1.1.1 版本 # cat /etc/redhat-release CentOS release 6.8 (Final) # uname -r 2.6.32-642.4.2.el6.x86_64 # uname -m x86_64 1.1.2 安装 可以直接通过源码安装。先从Git官网下载源码,然后解压,…

    Linux干货 2016-10-31
  • Linux Kernel

    Linux Kernel 概述:文章将主要介绍Linux 内核的相关信息,包括内核各组成部分的详细介绍,其中有内核信息的获取命令,uname;内核模块管理类命令:lsmod,modinfo,modprobe,insomd,rmmod;ramdisk生成的相关命令,mkinitrd和dracut命令;以及linux中的两个为文件系统 /proc和/sys。最后…

    Linux干货 2016-09-19
  • ntp时间服务器

    前言   ntp(Network Time protocol)是网络时间协议,是用来使网络中的各个计算机时间同步的一种协议。 ntp配置  1)ntp是由ntp软件提供,如果没有可以使用yum进行安装  2)ntp配置文件介绍:/etc/ntp.conf   利用restrict来管理权限控制;语法格式:restric…

    Linux干货 2015-06-24
  • 如何学好C语言

    有人在酷壳的留言版上询问下面的问题 keep_walker : 今天晚上我看到这篇文章。 http://programmers.stackexchange.com/questions/62502/small-c-projects 我也遇到了和提问的老外一样的问题。。能给像遇到这样烦恼的程序员一点建议嘛?谢谢! 我相信,这可能是很多朋友的问题,我以前…

    Linux干货 2016-08-15
  • 网络相关命令

    网络相关命令 常用命令 ifcfg家族:   ifconfig:配置IP,NETMASK   route :路由   netstat : 状态及统计数据查看 iproute2家族     ip  系列 &nbs…

    Linux干货 2016-09-07
  • 第一周-N28

    1、描述计算机的组成及功能 我们现在常用的计算机,包括手机及智能设备,通常由五大部件组成(冯若依曼提出),如下图所示: 五大部件: 运算器:做算数运算(加减乘除取余)和逻辑运算(移位) 控制器:控制各部分协调的功能。 CPU包括以下四个部分:运算器、控制器、寄存器、缓存 I/O设备:即输入输出设备,用于跟外部交互。通常为磁盘、键盘、鼠标、显示器、打印机等。I…

    2017-12-04