终端(terminal)控制台(console)区别终极理解
最新推荐文章于 2025-07-25 10:03:31 发布
leaving0425
最新推荐文章于 2025-07-25 10:03:31 发布
阅读量2.1w
收藏
57
点赞数
46
分类专栏:
linux
文章标签:
终端
控制台
linux
专栏收录该内容
1 篇文章
订阅专栏
本文详细解释了计算机系统中终端和控制台的概念及其历史演变,包括它们在Linux和其它UNIX类系统中的具体表现形式。
原网址:
http://www.linuxdiyf.com/viewarticle.php?id=36084
原标题:关于终端和控制台的一些解释
今天看到有人问终端和控制台的区别,而且这个问题比较有普遍性,因此想抽出一点时间来解释一下这两个术语的区别。
终端,英文叫做terminal ,通常简称为term ,比如我们在X下的xterm.
控制台,英文叫做console。
要明白这两者的关系,还得从以前的多人使用的计算机开始。
大家都知道,最初的计算机由于价格昂贵,因此,一台计算机一般是由多个人同时使用的。在这种情况下一台计算机需要连接上许多套键盘和显示器来供多个人使用。在以前专门有这种可以连上一台电脑的设备,只有显示器和键盘,还有简单的处理电路,本身不具有处理计算机信息的能力,他是负责连接到一台正常的计算机上(通常是通过串口) ,然后登陆计算机,并对该计算机进行操作。当然,那时候的计算机操作系统都是多任务多用户的操作系统。这样一台只有显示器和键盘能够通过串口连接到计算机的设备就叫做终端。
而控制台又是什么回事呢? 学机电的人应该知道,一台机床,或者数控设备的控制箱,通常会被称为控制台,顾名思义,控制台就是一个直接控制设备的台面(一个面板,上面有很多控制按钮)。 在计算机里,把那套直接连接在电脑上的键盘和显示器就叫做控制台。请注意它和终端的区别,终端是通过串口连接上的,不是计算机本身就有的设备,而控制台是计算机本身就有的设备,一个计算机只有一个控制台。计算机启动的时候,所有的信息都会显示到控制台上,而不会显示到终端上。也就是说,控制台是计算机的基本设备,而终端是附加设备。 当然,由于控制台也有终端一样的功能,控制台有时候也被模糊的统称为终端。 计算机操作系统中,与终端不相关的信息,比如内核消息,后台服务消息,都可以显示到控制台上,但不会显示到终端上。
以上是控制台和终端的历史遗留区别。现在由于计算机硬件越来越便宜,通常都是一个人独占一台计算机超做,不再连接以前那种真正意义上的“终端设备了”,因此,终端和控制台的概念也慢慢演化了。终端和控制台由硬件的概念,演化成了软件的概念。
现在说的终端,比如linux中的虚拟终端,都是软件的概念,他用计算机的软件来模拟以前硬件的方式。比如在linux中,你用alt+f1 ~ f6 可以切换六个虚拟终端,就好比是以前多人公用的计算机中的六个终端设备,这就是为什么这个叫“虚拟终端”的原因。当然,现在的linux也可以通过串口线,连接一个真正的终端,现在这种终端设备已经非常罕见了,但是还存在,只是一般人很难见到。也有人利用以前的老电脑(386,486)装上一个串口通信软件,连上一台计算机,来模拟一个终端来用。这样可以达到一台电脑多人使用的目的。
简单的说,能直接显示系统消息的那个终端称为控制台,其他的则称为终端。但是在linux系统中,这个概念也已经模糊化了。
比如下面这条命令:
echo "hello,world" > /dev/console
这条命令的目的是将"hello,world"显示到控制台上/dev/console是控制台设备的设备名。在linux中,在字符模式下,你无论在哪个虚拟终端下执行这条命令,字符hello,world都会显示在当前的虚拟终端下。也就是说,linux把当前的终端当作控制台来看待。可见,linux中已经完全淡化了控制台和终端的区别。但是在其他的UNIX类系统中,却很明显的有虚拟终端和控制台的区别。比如freeBSD系统。
在freebsd中,只有第一个“终端”才是真正的控制台。(就是说按alt+f1得到的那个虚拟终端) ,你无论在哪个虚拟终端上执行上面的那条命令(哪怕是通过网络连接的伪终端上执行这条命令)。hello,world字符总会显示到第一个“终端”也就是真正的控制台上。另外,其他的一些系统内部信息,比如哪个用户在哪个终端登陆,系统有何严重错误警告等信息,全都显示在这个真正的控制台上。在这里,就明显的区分了终端和控制台的概念。其他UNIX中也是这样的。比如Tru64 unix 在X下有一个控制台模拟软件,你无论在哪里输入echo "hello,world" > /dev/console命令,hello,world总会显示在这个控制台模拟器中。 我们在X界面下用的那些输入命令的软件,比如xterm ,rxvt, gnome-terminal等等,都应该被称为终端模拟软件。请注意它和控制台模拟软件的区别。linux中好象没有控制台模拟软件。在X中的终端模拟软件中输入的echo "hello,world">/dev/console 命令的输出信息,都会输出到启动该X服务器的虚拟终端上。比如,你用字符方式登陆系统。进入第一个虚拟终端,然后startx启动X服务器。再打开xterm 来输入 echo "hello,world">/dev/console 命令,那么字符串hello,world就显示在第一个虚拟终端上。你按ctrl+alt+f1,回到那个启动X服务器的终端,就可以看到hello,world字符串。
现在该明白终端和控制台的区别了吧。再简单的说,控制台是直接和计算机相连接的原生设备,终端是通过电缆、网络等等和主机连接的设备。
在以前的硬件终端设备中,由于生产厂家不同,所遵循的标准不同,因此有不同的型号标准。比如vt100等。这里的vt100就是一个标准,那么现在我们所说的终端,往往不是真正的硬件终端了,而是终端模拟软件了,因此不同的终端模拟软件可能符合不同的标准,还有一些终端模拟软件符合很多种不同终端的标准。比如gnome的终端模拟软件gnome-terminal,他提供好几中标准可供用户选择。用户只要设置一下就可以了。
现在,由于原先的这些设备在我们的视线中渐渐淡出,控制台和终端的概念也慢慢谈化。普通用户可以简单的把终端和控制台理解为:可以输入命令行并显示程序运行过程中的信息以及程序运行结果的窗口。 不必要严格区分这两者的差别。
确定要放弃本次机会?
福利倒计时
:
:
立减 ¥
普通VIP年卡可用
立即使用
leaving0425
关注
关注
46
点赞
踩
57
收藏
觉得还不错?
一键收藏
知道了
0
评论
分享
复制链接
分享到 QQ
分享到新浪微博
扫一扫
举报
举报
专栏目录
Linux基础之terminal、console、tty、pty简介说明
太极淘的博客
03-28
2433
最近在取系统日志时,grub.cfg文件中配置console=ttyS1,115200,执行init 6重启系统时,无法显示系统启动日志,因为我将系统日志重定向到了串口终端了,需要接串口线才能显示。只要将grub.cfg文件修改console=tty1就可以在显示器显示系统日志了。
由此学习下terminal、console、tty、pty的简介。
Terminal.Gui vs 传统控制台:如何用5大核心功能打造跨平台.NET交互大师?
最新发布
java专栏
09-23
584
摘要: Terminal.Gui正成为.NET开发者替代传统控制台的首选工具,其五大核心技术(跨平台GUI、丰富控件库、计算布局、事件驱动、剪贴板集成)显著提升开发效率与交互体验。数据显示,相比传统控制台,Terminal.Gui可减少60%代码量,UI构建时间缩短75%,并在医疗、金融等场景中实现效率飞跃。未来结合AI生成代码与自适应学习,将进一步革新终端界面开发。开发者通过掌握其核心特性,可快速构建高性能、跨平台的现代化命令行应用。
参与评论
您还未登录,请先
登录
后发表或查看评论
linux终端和控制台,Linux下的consolen(控制台)和terminal(终端)
weixin_39857899的博客
05-03
3207
console和terminal是很容易让人迷惑的两个概念。要本质上区别这两个名词背后的差异,应该从它的使用角度去区分。terminal(终端),其实是处于用户使用系统的角度来说的,相对于提供服务的系统终端是用户使用这个系统的入口,这个名词的使用范围比console要广。而console(控制台)则强调是控制系统(几乎就是大机了)的地方,其使用者主要是管理员。由于历史的的原因,在计算机世界里ter...
关于终端和控制台的一些解释
dadalan的专栏
07-30
1400
今天看到有人问终端和控制台的区别,而且这个问题比较有普遍性,因此想抽出一点时间来解释一下这两个术语的区别。 终端,英文叫做terminal ,通常简称为term ,比如我们在X下的xterm. 控制台,英文叫做console。 要明白这两者的关系,还得从以前的多人使用的计算机开始。 大家都知道,最初的计算机由于价格昂贵,因此,一台计算机一般是由多个人同时使用的。在这种情况下一台计算机
cmd、powerShell、终端或Terminal的区别
weixin_75126024的博客
07-25
934
本文比较了Windows系统中的三种命令行工具:cmd是最基础的命令行工具,兼容DOS命令但功能有限;PowerShell是更现代的脚本环境,支持对象操作和自动化任务;终端(Terminal)是命令行界面的容器,Windows Terminal可集成多种shell。日常简单命令可用cmd,复杂任务推荐PowerShell,多标签需求选择Windows Terminal,而Linux/Mac使用自带终端(bash/zsh)。三种工具各有所长,应根据具体需求选择使用。
Linux中的终端(Terminal)与控制台(Console)的区别
热门推荐
MIss-Y的博客
09-25
3万+
前言:我们经常听见两个概念,终端和控制台,但是它们的本质到底是什么,到底有什么区别,却很少能够讲得清楚,虽然明确的区分它们并没有太大的用处,但是对于理解Linux还是非常有帮助的。
一、终端Terminal
1.1 终端的定义
(1)什么是终端?
终端就是处理计算机主机输入输出的一套设备,它用来显示主机运算的输出,并且接受主机要求的输入,典型的终端包括显示器键盘套件,打印机打字机套件等...
ZXV10 T800(V1.1.1) 常用操作指导说明手册.zip
09-27
中兴 ZXV10 T800(V1.1.1)操作手册,内容包含了关于中兴视频会议终端T800的详细的操作方法。本资料仅供学习参考使用,严禁用于商业用途,请在下载后24小时内删除!
Linux终端(Terminal)与控制台(Console)的区别
探索C++编程的奥秘,分享深入的技术见解和实践,旨在激发读者创造力与解决问题的思维。
06-18
1372
Linux终端(Terminal)与控制台(Console)的区别
Linux的Console、Terminal和串口
嵌入式Linux
04-13
1481
dev目录下的各种tty,ptmx,pts/X(X是1,2,3等数字),console 等等这些是令人混淆的根源,其实理解这些是有窍门的,记住它们只是操作某种终端设备的设备文件而已,这是UNIX风格的延续,这些设备文件对应的真实设备也就那么几种,比如显示器键盘套件,串口对面的超级终端,伪终端对面的SSH,Telnet等等。最后,解释一下伪终端。终端,是用来显示或者输入的设备,比如早期的VGA显示器,当然了,现在我们很多用的是电脑的显示器,比如是笔记本电脑,HDMI线,串口终端,SSH终端等等。
Linux终端VNC客户端 headmore:终极远程桌面体验
Linux虚拟终端(Virtual Terminal,简称VT)是Linux系统中的一个特性,它允许用户通过字符界面访问系统。每个VT都是一个独立的控制台实例,可以通过按键组合(如Ctrl+Alt+F1至F7)在它们之间切换。这些VT通常被用作...
termtools:JavaScript自定义终端的终极利器
- **console**:控制台,一种用户输入设备,也是输出设备,通常指的是系统终端。 - **terminal**:终端,是计算机的一个输入输出设备,也是用户与操作系统交互的界面。 - **themes**:主题,指终端的外观设计和颜色...
windows系统,vscode里c++代码为utf8,task.json使用了"-fexec-charset=GBK",控制台中文显示正常,终端中文不显示。移除了"-fexec-charset=GBK"后控制台中文乱码,终端中文正常。控制台和终端都是GBK编码,为什么
03-21
嗯,用户的问题是关于在Windows系统下使用VSCode编写C++程序时,控制台和终端中文字符显示不一致的情况。具体来说,当他们在task.json中使用了“-fexec-charset=GBK”编译选项时,控制台显示中文正常,但终端(比如...
Linux下的Terminal、Console两个概念辨析《转》
ahleung的专栏
01-19
292
这两个术语从中文意思上很容易混在一起,但他们确实是两个不同的概念。 传统上讲,terminal(终端),其实是处于用户使用系统的角度来说的,相对于提供服务的系统终端是用户使用这个系统的入口。而console(控制台)更强调是控制系统的地方,其使用者主要是管理员。从概念上讲terminal的范围比console要广。 tty(终端设备的统称) tty一词源于Telety...
linux终端区别吗,console和terminal的区别
weixin_31614235的博客
05-03
320
问题是进入用户态以后,为啥还用kernel的这个vt呢?按道理,这个kernel提供的vt仅仅是kernel自己用,进入userspace以后,应该使用一个更好的termilal才对。浏览器那个console显然和这里所谈的console不是一个意思。我的意思是在os这个范围,或者说仅仅是对于kernel和userspace而言。当然也有可能是因为离开kernel以后,基本上直接就进入GUI的...
console、terminal、shell区别及shell入门
DRZ_2000的博客
03-20
2236
shell 基本知识
一 console、Terminal、shell三者之间的区别
这还要从之前的大型主机,用多任务多用户的那种说起。学习机电的同学应该知道,对于一个机床,会有一个布满控制开关的台面,可以操作台面上的开关控制机床的运行。同样,计算机也存在这样的一个控制台,用于控制计算机运行,这就是console(控制台)。
Terminal(终端),对于多用户多任务的计算机,会连出很...
命令行界面 (CLI)、终端 (Terminal)、Shell、TTY,傻傻分不清楚?
weixin_34248849的博客
08-24
4840
原文发表在我的 博客 上,欢迎订阅。;)
为什么突然想写这样一篇文章呢?其实是因为在最近计划发布的一篇关于 WSL (Windows Subsystem for Linux) 的博文中,我打算对终端模拟器、Shell 的选择与配置进行一些说明。不过对于刚接触 Linux 或者刚接触命令行界面的同学,可能会有些难以理解它们之间的区别(事实上...
console和terminal
黄仁军的专栏
12-03
1293
http://hi.baidu.com/shanyefeng/blog/item/9bdf86979000376554fb96be.html
console和terminal是很容易让人迷惑的两个概念。根据wikipedia上的定义,小型计算机的console应该就是键盘加显示器;而terminal则是输入数据进去,和显示数据来源的设备,通常是一个计算机系统。
Linux下的console除了真实的硬件设备外,还有virtual console,也就是你按alt+Fn或者al
Linux下的Terminal、Console两个概念辨析
iame_wang的专栏
05-29
599
本文参考了如下两篇文章:
http://wangcong.org/blog/?p=423
http://blog.chinaunix.net/u/6436/showart_1003495.html
这两个术语从中文意思上很容易混在一起,但他们确实是两个不同的概念。
传统上讲,terminal(终端),其实是处于用户使用系统的角度来说的,相对于提供服务的系统终端是用户使用这个系统...
pycharm控制台(console)与终端(termimal)的区别
qq_53525138的博客
05-14
3465
在交互模式下,Python解释器会逐行接收Python代码并即时响应;而在非交互模式下,解释器先解析全部输入,再执行。ipython In [序号]: 这不仅提供了代码执行的功能,还支持多种高级特性,如动态类型提示、图形化界面等。conda install提供了更广泛的软件包安装选项,特别是在涉及多语言开发和复杂依赖管理的情况下。而pip install则专注于Python包的安装,适用于大多数Python开发场景。cpython >>> 这种模式适用于快速测试代码片段或进行简单的数据处理。