2

我的主要问题是在 X-Server 进程内存中运行的一段代码(排除的驱动程序 - 我们都知道可以用不同的方式编写)直接访问 GPU 卡中的内存?

或者它使用驱动程序和drm,或任何其他接口与GPU通信和排队绘制/渲染/清除/...命令?

我知道问题似乎很蹩脚,但我对细节感兴趣?

编辑:

更具体地说:据我了解,内核在驱动程序的帮助下与硬件通信,并向其余部分公开 API(如果我错了,请纠正我)。在这种情况下,X-Server 可以绕过位于内核中的 DMA-API(我只是猜测 DMA IO 负责与外围设备的通信)与 GPU 卡进行通信和交换数据(以直接方式 - 无需任何人的帮助 == 无需内核,司机,...)?

X-Server 与 GPU 通信的最低要求是什么。我的目标是了解这种通信是如何在低级别完成的。

4

1 回答 1

0

在 Linux 上,给定的 X 服务器完全有可能直接访问部分视频卡内存作为帧缓冲区。这不是显示事物的最有效方式,但它确实有效。

于 2015-04-27T21:17:42.063 回答