返回顶部
首页 > 资讯 > 操作系统 >如何分析Linux中终端界面与图形界面之间的切换关系
  • 657
分享到

如何分析Linux中终端界面与图形界面之间的切换关系

2023-06-28 17:06:56 657人浏览 八月长安
摘要

如何分析linux中终端界面与图形界面之间的切换关系,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。其实单纯的从命令界面与图形界面之间的切换是很容易的,就那么几个命令,但是要

如何分析linux中终端界面与图形界面之间的切换关系,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

其实单纯的从命令界面与图形界面之间的切换是很容易的,就那么几个命令,但是要彻底弄懂这背后的设计架构需要涉及到很多的概念,下面为你讲解Ubuntu 18.10操作系统中的X Window,内容是了解自己机器上的 X Window、理解 display 和虚拟控制台、远程连接 X Server、理解 DisplayManager 和 X Window 桌面环境的启动过程和运行嵌套的 X Server等这些基本概念。
一、 什么是X Window

X Window不是某一个具体的窗体界面,X Window 本质是一个分层的架构,它分为 Server 和 Client。X Server 负责图形界面的显示和用户的输入,而Client 程序需要连接到 X Server,然后请求 X Server 绘制图形界面,同时从 X Server 接受用户的输入。在桌面系统上,X Server 和 Client 程序往往安装在同一台机器上,日常使用基本感觉不到它是分层的。就像我们的一台电脑,X Server和Client是在同一台电脑的。

既然X Window是分层的架构,很显然,X Server 和 Client 也可以分别运行在不同的机器上,在一台机器上运行程序,而在另外一台机器上显示图形界面。

很多人考到这里就有点蒙了,我们在编写网站的时候也有Server-Client分层架构啊,那这有区别吗?当然有了。

X Window 中的 Server 和 Client 的概念和我们平时接触到的“Server/Client”概念刚好相反。很多熟悉 Internet 原理的人,第一次接触 X Window 的这两个概念都会搞错。在Internet里面的Server/Client,是Server负责处理相关的业务,然后将结果返回到Client客户端,但是X Window恰好是相反的,它是Client负责处理,Server负责显示。

比如,我有两台电脑,一台本地机器上运行 ubuntu 18.10 桌面版,而在另外一台远程机器上运行 Centos 7(纯字符界面),如果是Internet里面的Server/Client架构,Ubuntu 是 Client,而 CentOS 是 Server。

但是在 X Window 中,Server 偏偏是我面前的这台 Ubuntu,X Server 运行在 Ubuntu 上。我可以在 CentOS 中运行 GVim,但是窗口显示在 Ubuntu 中,这时,GVim 是一个 Client 程序,它在远程机器上运行,而它的窗口显示在本地。

二、理解 display 和虚拟控制台

网上很多介绍 X Window 的文章都是先让系统进入字符界面,然后手动启动一个 X Server。其实这完全没有必要,因为在同一台机器上完全可以运行多个 X Server,只需要让每个 X Server 的 display 不同即可。那么 display 究竟是什么?

实际上,display 就是计算机配备的一套输入输出设备,一个电脑可以有多个输入输出设备,当然也可以只有一个。

在 X Window 中,可以通过 hostname:display_number.screen_number 来指定一个屏幕。可以这样理解:一台计算机可以有多个 display,一个 display 可以有多个屏幕。所以,display 相当于是计算机配备的一套输入输出设备,一般情况下,一台电脑只配一套键盘鼠标和一个显示器,特殊情况下,可以配多个显示器。

现在问题出来了,我的电脑只有一套键盘鼠标和一个显示器,也就是只有一个 display,那又怎么能运行多个 X Server 呢?那是因为在 Linux 中,还有虚拟控制台这样的高级特性。只需要同时按下 Ctrl+Alt+F1、Ctrl+Alt+F2、…、Ctrl+Alt+F7,就可以在不同的虚拟控制台中进行切换。就相当于是给这个电脑配备了7个不同的显示器。

注意:默认情况下,Linux会提供6个Terminal 来让用户登录,切换的方式为Ctrl+Alt+F1到F6.而且,系统会为这6个终端界面以 tty1、tty2、tty3、tty4、tty5、tty6 的命名方式命名,除此之外,Linux还有一个默认的X窗口桌面,使用Ctrl+Alt+F7,姐可以切换到图形桌面进行登录了。为什么用tty来命名呢?

tty:终端设备的统称。

tty一词源于Teletypes,或者teletypewriters,原来指的是电传打字机,是通过串行线用打印机键盘通过阅读和发送信息的东西,后来这东西被键盘与显示器取代,所以现在叫终端比较合适。终端是一种字符型设备,它有多种类型,通常使用tty来简称各种类型的终端设备。Linux默认情况下

tty1~6是文本型控制台,tty7是X Window图形显示管理器。

但是Linux不同的发行版本上面的图形桌面和用户终端可能会有所不同。

比如在 Ubuntu 18.10 中,虚拟控制台 3 到 6 运行的是 tty,也就是字符界面,即Ctrl+Alt+F3到F6分别显示tty3、tty4、tty5、tty6,虚拟控制台 2 运行的是 Xorg,虚拟控制台 1 运行的是图形界面。

三、Terminal与X Window的互相转化

前面的使用Ctrl+Alt+Fn的形式来回切换只是形式上的转换,每一个都在运行,只不过显示的那一个不同,但是实际上,Terminal与X Window在Linux中的运行等级是不一样的,Linux一共有7中运行等级(run level),在不同的运行级下,系统有着不同的状态,它们分别是:

0:停机(记住不要把initdefault 设置为0,因为这样会使Linux无法启动 )

单用户模式,就像Win9X下的安全模式。

多用户,但是没有 NFS 。

完全多用户模式,标准的运行级。

一般不用,在一些特殊情况下可以用它来做一些事情。

X11,即进到 X-Window 系统。

重新启动 (记住不要把initdefault 设置为6,因为这样会使Linux不断地重新启动)。

Terminal默认的run level是3,而X Window默认的run level是5,现在如果我在中断输入如下命令:

init 3

那么会杀死X Window,这样就没有X Window了,只存在Terminal,此时如果我想要重新进入到X Window,我需要在Terminal进行登录,然后执行

startx

重新打开X Window。

关于如何分析Linux中终端界面与图形界面之间的切换关系问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注编程网操作系统频道了解更多相关知识。

--结束END--

本文标题: 如何分析Linux中终端界面与图形界面之间的切换关系

本文链接: https://lsjlt.com/news/320718.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 如何分析Linux中终端界面与图形界面之间的切换关系
    如何分析Linux中终端界面与图形界面之间的切换关系,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。其实单纯的从命令界面与图形界面之间的切换是很容易的,就那么几个命令,但是要...
    99+
    2023-06-28
  • Linux字符界面切与图形界面之间的切换
    1.Linux常用的运行模式 在进行字符界面,图形界面切换讲解之前,先看一看Linux常用的运行模式 运行模式说明rescue.target单用户字符界面模式,只有root用户可以登录系统multi-user.targ...
    99+
    2023-09-28
    linux 服务器 运维 startx init 5
  • linux系统如何切换到图形界面
    要切换到图形界面,可以通过以下几种方法:1. 使用系统默认的显示管理器:在登录界面输入用户名和密码后,选择图形界面登录。2. 使用命...
    99+
    2023-09-08
    linux
  • Linux命令行与图形界面如何切换
    小编给大家分享一下Linux命令行与图形界面如何切换,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!实时切换1.1 命令行->图形startx1.2 图形-&...
    99+
    2023-06-13
  • Linux系统下图形界面与Linux命令行模式怎么切换
    这篇文章将为大家详细讲解有关Linux系统下图形界面与Linux命令行模式怎么切换,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、安装的过程中默认语言是英文,而不是中文简体(安装过程中有两次制定语言选项...
    99+
    2023-06-17
  • ubuntu命令行模式与图形桌面之间如何切换
    这篇文章给大家分享的是有关ubuntu命令行模式与图形桌面之间如何切换的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。ubuntu命令行模式与图形桌面切换方法,具体如下:嵌入式软件开发需要依赖Linux操作系统,常...
    99+
    2023-06-13
  • 如何解决RedHat系统中图形界面鼠标用不了的问题
    本篇内容介绍了“如何解决RedHat系统中图形界面鼠标用不了的问题”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!在Linux系统(RedHa...
    99+
    2023-06-10
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作