Linux基础(三)——交互接口

一、什么是交互式接口

交互式接口就是系统和用户之间进行交互和信息交换的媒介,它实现信息的内部形式与人类可以接受形式之间的转换。换句话说,即在启动终端后,在终端设备附加一个交互式应用程序,就叫交互式接口。通常指软件接口,一般有命令行接口、图形接口、程序接口三种。
命令行接口
命令行接口(command line interface,CLI)是计算机操作系统或应用程序为用户提供的可视提示接口,使用CLI,可以在特定的行中输入命令,从操作系统接收回应等。常见的如:shell程序:sh (bourn 史蒂夫·伯恩)、csh、 tcsh、 ksh (korn)、 bash (bourn again shell)GPL、zsh等。
图形接口
图形用户界面(Graphical User Interface,简称 GUI,又称图形用户接口)是指采用图形方式显示的计算机操作用户界面。图形用户界面是一种人与计算机通信的界面显示格式,允许用户使用鼠标等输入设备操纵屏幕上的图标或菜单选项,以选择命令、调用文件、启动程序或执行其它一些日常任务。常见的如:X protocol、window manager、Desktop:GNOME (C, 图形库gtk)、KDE (C++,图形库qt)、XFCE (轻量级桌面)
程序接口
程序接口就是操作系统为用户提供的两类接口之一,编程人员在程序中通过程序接口来请求操作系统提供服务。面向过程语言最基本的单元是过程和函数。常见的如:API(Application Programming Interface),就是软件系统不同组成部分衔接的约定;ABI(Application Binary Interface),应用程序二进制接口,描述了应用程序和操作系统之间,一个应用和它的库之间,或者应用的组成部分之间的低接口。

二、终端

? 设备终端
键盘鼠标显示器
? 物理终端( /dev/console )
控制台console
? 虚拟终端(tty:teletypewriters, /dev/tty# #为[1-6])
tty 可有n个,Ctrl+Alt+F[1-6]
在UNIX系统中,计算机显示器通常被称为控制台终端(Console)。它仿真了类型为Linux的一种终端(TERM=Linux),并且有一些设备特殊文件与之相关联:tty0、tty1、tty2等。当你在控制台上登录时,使用的是tty1。使用Alt+[F1—F6]组合键时,我们就可以切换到tty2、tty3等上面去。tty1 –tty6等称为虚拟终端,而tty0则是当前所使用虚拟终端的一个别名,系统所产生的信息会发送到该终端上。因此不管当前正在使用哪个虚拟终端,系统信息都会发送到控制台终端上。
你可以登录到不同的虚拟终端上去,因而可以让系统同时有几个不同的会话期存在。只有系统或超级用户root可以向/dev/tty0进行写操作
? 图形终端( /dev/tty7 ) startx, xwindows
CentOS 6: Ctrl + Alt + F7
CentOS 7: 在哪个终端启动,即位于哪个虚拟终端
? 串行终端( /dev/ttyS# )
ttyS
串行端口终端(Serial Port Terminal)是使用计算机串行端口连接的终端设备。计算机把每个串行端口都看作是一个字符设备。有段时间这些串行端口设备通常被称为终端设备,因为那时它的最大用途就是用来连接终端。这些串行端口所对应的设备名称是/dev/tts/0(或/dev/ttyS0)、/dev/tts/1(或/dev/ttyS1)等,设备号分别是(4,0)、(4,1)等,分别对应于DOS系统下的COM1、COM2等。若要向一个端口发送数据,可以在命令行上把标准输出重定向到这些特殊文件名上即可。例如,在命令行提示符下键入:echo test > /dev/ttyS1会把单词”test”发送到连接在ttyS1(COM2)端口的设备上。
? 伪终端( pty:pseudo-tty , /dev/pts/# )
pty, SSH远程连接
伪终端(Pseudo Terminal)是成对的逻辑终端设备,例如/dev/ptyp3和/dev/ttyp3(或着在设备文件系统中分别是/dev/pty/m3和/dev/pty/s3)。它们与实际物理设备并不直接相关。如果一个程序把ttyp3看作是一个串行端口设备,则它对该端口的读/写操作会反映在该逻辑终端设备对的另一个上面(ttyp3)。而ttyp3则是另一个程序用于读写操作的逻辑设备。这样,两个程序就可以通过这种逻辑设备进行互相交流,而其中一个使用ttyp3的程序则认为自己正在与一个串行端口进行通信。这很象是逻辑设备对之间的管道操作。
对于ttyp3(s3),任何设计成使用一个串行端口设备的程序都可以使用该逻辑设备。但对于使用ptyp3的程序,则需要专门设计来使用ptyp3(m3)逻辑设备。
例如,如果某人在网上使用telnet程序连接到你的计算机上,则telnet程序就可能会开始连接到设备ptyp2(m2)上(一个伪终端端口上)。此时一个getty程序就应该运行在对应的ttyp2(s2)端口上。当telnet从远端获取了一个字符时,该字符就会通过m2、s2传递给getty程序,而getty程序就会通过s2、m2和telnet程序往网络上返回”login:”字符串信息。这样,登录程序与telnet程序就通过“伪终端”进行通信。通过使用适当的软件,就可以把两个甚至多个伪终端设备连接到同一个物理串行端口上。
在使用设备文件系统(device filesystem)之前,为了得到大量的伪终端设备特殊文件,HP-UX AIX等使用了比较复杂的文件名命名方式。

可以通过以下命令查看当前的终端设备
tty

三、Linux Shell

?Shell 是Linux系统的用户界面,提供了用户与内核进行交互操作的一种接口。它接收用户输入的命令并把它送入内核去执行。
?Shell也被称为LINUX的命令解释器(command interpreter)
?Shell是一种高级程序设计语言

bash shell
GNU Bourne-Again Shell(bash)是GNU计划中重要的工具软件之一,目前也是 Linux标准的shell,与sh兼容
?CentOS默认使用
?显示当前使用的shell
echo ${SHELL}
?显示当前系统使用的所有shell
cat /etc/shells

原文地址:https://blog.51cto.com/1456850/2360348

时间: 2024-10-05 04:59:08

Linux基础(三)——交互接口的相关文章

Linux基础三(软件安装管理)

目录: 一.Linux 中软件包的分类 1.源码包 2.二进制包 3.源码包 4.软件安装的选择 二.软件安装之 RPM 1.背景知识 2.准备知识 3.安装升级与卸载 4.查询校验与提取 一.Linux 中软件包的分类: 1.源码包 1.1 源码包的简介 源码包就是各种源代码文件组合而成的压缩包,因为 Linux 是开源的,所以源码包中的源代码是可以查看甚至修改的,用户可以根据自己所需要的功能进行安装.但是源码包在安装的时候需要编译,即从源代码 abcd 编译成机器语言 0101,这个过程需要

Linux基础三

简单文本的处理 1.tr 命令 tr 命令可以用来删除一段文本信息中的某些文字.或者将其进行转换. 使用方式: tr [option]...SET1 [SET2] 常用的选项有: 选项 说明 -d 删除和set1匹配的字符,注意不是全词匹配也不是按字符顺序匹配 -s 去除set1指定的在输入文本中连续并重复的字符 操作举例: # 删除 "hello shiyanlou" 中所有的'o','l','h' $ echo 'hello shiyanlou' | tr -d 'olh' # 将

linux基础三---网络基础&软件包管理

一 ifconfig:显示所有正在启动的网卡的详细信息或设定系统中网卡的IP地址. ifconfig eno16777736 down/up   关闭/开启 eno16777736 网卡 ifconfig eno16777736 172.18.48.56 netmask 255.255.255.128  为eno16777736 network网络状态命令 service network status(状态) service network stop(停用) service network st

Linux基础三:linux目录结构和目录文件的浏览、管理及维护

目录文件的浏览.管理及维护(一) 1.Linux文件系统的层次结构 1)Linux文件系统的树状结构:在Linux或UNIX操作系统中,所有的文件和目录都被组织成一个以根节点开始的倒置的树状结构. 2)目录的定义:目录相当于Windows中的文件夹,目录中存放的既可以是文件,也可以是其他的子目录. 3)顶层根目录的表示:使用“/”来表示根目录 4)文件系统中的两个特殊目录: . 表示当前目录,即用户所在的工作目录 .. 表示父目录,即当前目录的上一层目录 2.Linux系统中的一些重要的目录 1

linux 基础三

hello ,上次给大家介绍了目录管理.文件管理.日期时间管理 如果有些遗忘的话可以观看https://www.cnblogs.com/X404/p/12235929.html 先总结一下~~ 目录管理:mkdir rmdir ls cd pwd tree 文件管理:touch nano stat cp mv rm file 时间管理: date clock  cal  hwclock -------------------------------------------------------

Linux基础面试题(三)分享,看看你能答对几道(附带答案)?

1.WWW服务器是咋Internet上使用最为广泛,它采用的______结构? 答:b/s结构 2.Linux 内核引导时,从文件_____ 中读取要加载的文件系统? 答:/etc/fstab 3:Linux 文件系统中每个文件用_____节点 来标识? 答:索引节点 4.vi编辑模式下,用_____ 进行模式转换? 答:ESC 5:检查已安装的文件系统/dev/had5 是否正常,若检查有错,则自动修复,其命令及参数是? 答:fsck -a /dev/had5 6:在Linux 系统下,第二个

Linux基础知识题解答(三)

题目来自老男孩BLOG:http://oldboy.blog.51cto.com/2561410/1709569,比较适合新手,空余的时候做一下,可以巩固Linux基础知识,有不对的地方欢迎指正. 1.  存放系统的二进制命令的目录是(/bin) 超级用户二进制命令的目录是(/sbin) /dev指的是什么(设备文件目录) /etc指的是什么(配置文件目录) /mnt指的是什么(文件挂载目录) /proc指的是什么(内存的映射,是系统内核和进程的虚拟文件目录) 2.  开机自动挂载设备的文件是(

Linux基础之磁盘管理

 Linux基础之磁盘管理         关于Linux中磁盘管理我们应该从以下四个方面入手,去了解和学习磁盘管理的知识. 第一点 磁盘的结构--硬盘         硬盘的参数 结构:磁盘的盘片,磁头,马达(机械键盘) 类型:固态硬盘(SSB)和机械硬盘 接口:早期的IDE接口,现在的SATA,SCSI,SAS 还有容量,转速,传输速度,缓存等. 硬盘存储术语 head: 磁头 track: 磁道 cylinder: 柱面 secotr: 扇区  512bytes(字节) 第二点 磁盘的分区

Linux基础知识(2)

Linux基础知识: 一.程序管理: (1)程序的组成部分: (2)二进制程序: (3)配置文件: (4)库文件: (5)帮助文件: 二.程序包管理器: X: (1)程序的组成文件打包成一个或有限几个文件: (2)安装: (3)卸载: (4)查询: 三.安装Linux: 虚拟机安装Linux系统 需要设置计算机的CPU, 内存, IO等 四.虚拟化软件程序: vmwareworkstation和virtualbox虚拟机都可以安装系统 五.CentOS的镜像站点: http://mirrors.

【Linux基础】作业一

1.描述计算机的组成及其功能. >>>计算机由硬件,操作系统,软件三大部分组成. 一.其中硬件: 1.核心CPU(大脑处理中心) 2.必备电源(心脏动力来源),硬盘(仓库),内存(中转站),主板(协调中心),显示器(人机交互界面) 3.优化部件:网卡,声卡,显卡,风扇,光驱 4.输入输出设备:显示器,鼠标,键盘,麦克风音箱,闪存,蓝牙等等自添加. 二.其中系统: 操作系统是管理者,亦服务者,它还是一个执行者 1.Unix:AIX,BSD,FreeBSD,openBSD,HP-UX,Sol