为什么需要x服务器和Linux内核的驱动程序?

有人可以解释为什么需要两组驱动程序,一个在Linux内核中,一个在X中?

我知道设备驱动程序在内核中,但是那些在xserver中的作用是什么?

Wayland是否需要这样的驱动程序运行?

解决方法:

Linux图形支持在内核的大部分生命周期中都是一个很大的变异.最初,内核只与图形卡通信以用于文本模式.那时候,X使用它的驱动程序来做所有事情,所以它作为一个巨大的内核 – 在内核之外.

后来,在Direct Rendering Infrastructure (DRI)中,一些用于加速图形功能的代码移动了内核端(称为Direct Rendering Manager,DRM – 与数字版权管理无关),为3D加速功能提供了一致的抽象接口.

目前,您不需要加载内核端DRM模块.但是,如果你没有,那么你的X会话可能会回归到软件渲染的3D,这比硬件3D要慢得多,而且功耗更大.运行glxinfo将显示此信息.

Wayland是slightly different story.它位于内核和客户端应用程序之间.使用Wayland,X服务器是另一个客户端应用程序,只显示其根窗口. Wayland承担了与硬件交谈的职责(X与Wayland交谈).由于该项目仍处于开发阶段,因此无法知道它最终会在何处,但我理解它的方式仍然需要内核支持3D渲染.

从Wayland架构图中也可以看出:左边是现代X桌面的当前状态,右边是拟议的Wayland架构. Wayland合成器将X Server替换为与硬件对话的东西,但它不会取代内核基础架构 – 因此您仍然需要适当的内核支持.实际上,考虑到项目的目标,更多的东西应该转移到内核以获得更好的抽象.与X服务器一样,Wayland仍然依赖于图形硬件.

上一篇:linux – 如何知道Wayland或X11是否被使用


下一篇:wayland helloworld (一)