有人可以解释为什么需要两套驱动程序,一套在Linux内核中,一套在X内核中吗?
我知道设备驱动程序位于内核中,但是这些驱动程序在xserver中的作用是什么?
Wayland是否需要此类驱动程序才能运行?
在内核的整个生命周期中,Linux图形支持一直是一个重大变化。最初,内核仅出于文本模式的目的与图形卡通信。那时,X使用其驱动程序来完成所有工作,因此它是一个巨大的内核外部内核。
后来,借助Direct Rendering Infrastructure(DRI),一些用于加速图形功能的代码移到了内核端(称为Direct Rendering Manager,DRM,与数字版权管理无关),从而为3D加速功能提供了一致的抽象接口。
目前,您没有需要有一个内核端DRM模块加载。但是,如果您没有,则您的X会话很可能会退回到软件渲染的3D,这比硬件3D慢得多,耗电也更多。运行glxinfo
将显示有关此的信息。
韦兰的故事稍有不同。它位于内核和客户端应用程序之间。对于Wayland,X服务器是另一个客户端应用程序,将其根窗口显示为另一件事。Wayland负责与硬件对话(X与Wayland对话)。由于该项目仍处于开发阶段,因此无法得知最终结果,但据我了解,该项目仍需要3D渲染的内核支持。
从Wayland的架构图中也很明显:左边是现代X桌面的当前状态,右边是建议的Wayland架构师。Wayland合成器将X Server替换为与硬件对话的东西,但它不能替换内核基础结构-因此您仍然需要适当的内核支持。实际上,考虑到项目的目标,应该将更多的内容移至内核,以实现更好的抽象。像X服务器一样,Wayland仍然依赖于图形硬件。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句