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

相关推荐

  • PHP数组实际占用内存大小的分析

    我们在前面的php高效写法提到,尽量不要复制变量,特别是数组。一般来说,PHP数组的内存利用率只有 1/10, 也就是说,一个在C语言里面100M 内存的数组,在PHP里面就要1G。下面我们可以粗略的估算PHP数组占用内存的大小,首先我们测试1000个元素的整数占用的内存: <?php      &nb…

    系统运维 2015-05-28
  • 基于ssl功能实现mysql主从复制

    基于ssl功能实现mysql主从复制         证书准备:                                  CA证书…

    2016-11-22
  • 常见RAID介绍

    RAID简介 独立硬盘冗余阵列(RAID, Redundant Array of Independent Disks),旧称廉价磁盘冗余阵列(Redundant Array of Inexpensive Disks),简称磁盘阵列。主要目的是把多块硬盘组合起来提高数据处理能力、容错功能等 根据实现方式分为硬件和软件两种  硬件RAID:通过RAID…

    2016-04-12
  • 马哥教育网络班21期第6周作业

    1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; %s/^[[:space:]]\+/#& 2、复制/boot/grub/grub.conf至/tmp目录中,删除/tmp/grub.conf文件中的行首的空白字符; %s/^[[:space:]]\+/ …

    Linux干货 2016-12-05
  • 根据作业浅析正则表达式

        什么是正则?正则就是,那种体现出某种规律的不变性或者对称性的物理量或关系。     正则表达式(Regular Expression):由一类特殊字符及文本字符所编写的模式,其中有些字符(元字符)不表示字符字面意义,而表示控制或通配的功能(linux中,可以使用:man …

    Linux干货 2017-07-30
  • Linux的正则表达式grep,egrep

    Linux的正则表达式grep,egrep 一、概念 正则表达式是对字符串操作的一种逻辑公式,用事先定义好的一组特殊字符,组成一个“规则字符集合”,根据用户指定的文本模式对目标文件进行逐行搜索匹配,显示能被模式匹配到的结果。 给定一个正则表达式和另一个目标字符串,我们可以从给定的字符串中通过匹配模型,过滤字符串中不想要的的字符串,得到目标字符串,减少工作量。…

    Linux干货 2017-05-07