39、Linux 图形系统:X Window 与 Wayland 深度解析

Linux 图形系统:X Window 与 Wayland 深度解析

1. 图形系统基础问题

在图形系统中,窗口(或一组窗口)属于各个独立的进程,它们会独立进行所有图形更新。当用户可以移动窗口并使它们相互重叠时,就会产生两个关键问题:一是应用程序如何知道在哪里绘制其图形;二是如何确保一个应用程序不会覆盖其他窗口的图形。

2. 主流图形系统介绍

2.1 X Window 系统

X Window 系统采用服务器 - 客户端模式,其中 X 服务器充当桌面的“内核”,负责从渲染窗口、配置显示到处理键盘和鼠标等设备输入的一切事务。X 服务器并不规定任何事物的行为或外观,而是由 X 客户端程序处理用户界面。基本的 X 客户端应用程序(如终端窗口和 Web 浏览器)会连接到 X 服务器并请求绘制窗口。X 服务器会确定窗口的放置位置和客户端图形的渲染位置,并承担将图形渲染到帧缓冲区的一定责任,同时在适当的时候将输入传递给客户端。

不过,X 服务器存在一些问题。由于它是所有事务的中介,可能会成为显著的瓶颈。此外,它包含许多不再使用的功能,并且历史悠久,可追溯到 20 世纪 80 年代。尽管如此,它具有足够的灵活性,能够适应许多新功能,从而延长了其使用寿命。

2.2 Wayland

与 X 不同,Wayland 在设计上是高度去中心化的。没有大型显示服务器为多个图形客户端管理帧缓冲区,也没有集中的图形渲染权威机构。相反,每个客户端都有自己的内存缓冲区(可视为子帧缓冲区)用于其窗口,一个名为合成器的软件会将所有客户端的缓冲区组合成适合复制到屏幕帧缓冲区的形式。由于通常有硬件支持这项任务,合成器可以非常高效。 <

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值