linux GUI-嵌入式常用GUI系统

这一节主要主流的GUI进行系统进行一个介绍,内容也偏向于科普,大部分内容都摘自网上。

一、Linux GUI介绍

1.1 概念

GUI英文Graphical User Interface,中文图形用户界面。图形用户界面是指采用图形方式显示的计算机操作环境用户接口,与早期计算机使用的命令行界面相比,图形界面对于用户来说更为简便易用。GUI的广泛应用是当今计算机发展的重大成就之一。

我们知道Unix/Linux刚开始的时候是没有图形界面的,随着时代的发展,排版、制图、多媒体应用越来越普遍了,这些需求都需要用到图形用户界面。为此,MIT在1984年开发出了X Window System,X在字母表中是W(indows)的下一个字母,寓意“下一代GUI”的意思。目前为止,Unix/Linux上几乎所有的发行版都采用X Window System来作为自己的图形界面,它已经成为事实上的Unix/Linux图形界面标准。

1.2 X Window System

X Window System又名X11(现在主要的X Window System大都基于其第11个版本),是一个能够跨网络和操作系统平台的图形界面。开发者在开发X时就希望,这个窗口界面不要与硬件有强烈的相关性,这是因为如果与硬件的相关性高,那就等于开发一个操作系统了,如此一来其应用性就要受到限制。故此,X是一套软件体系,而不是操作系统中的组成部分,就像浏览器不是操作系统的组成部分一样。

X Window System可以分为三部分:X Server、X Client、X Protocol。

X Server:每个需要显示图形界面的主机都要运行一个X Server,它负责主机中各个与图形界面有关硬件设备的管理,如在显示器中显示输出,从鼠标、键盘接受输入等;

X Client:X Client指那些需要图形界面的应用程序,如浏览器、终端、视频播放器等。

比如说你键入一个字母c,X Server得到这个事件后,会将该事件转发给对应的程序处理(应用程序就是client),client接收到事件后,知道要显示一个字母,然后就会发一个请求给X Server,要求在xx,xx地方显示一个大小为xx颜色为xx,字体为xx的字母,X Server收到请求后,就按照要求把字母c画出来了。

X Server和X Client之间所使用的X Protocol通信协议对网络来说是透明的,所以client和server可以运行在相同机器上,也可以运行在不同机器上,甚至机器本身的硬件架构和操作系统也可以不一样(如windows上的xmanager就是一个X Server,它可以远程连接Linux上的主机为Linux上的X Client提供服务)。

由于X Window System效率较低的原因,目前已经逐渐使用Wayland来取代它,关于Wayland可以参考:

1.3 GUI系统架构
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Graceful_scenery

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值