一:概述
前面介绍Pixmap表示一块画布,是绘制发生的地方,本节看看驱动程序如何为画布分配内存/显存,以及如何与窗口关联的。
二:为画布分配BO
在系统启动时(用户登录系统之后,会重启Xorg),在 Xorg 服务器初始化时,要为屏幕创建根窗口的 Pixmap,并绑定到 GPU framebuffer,以支持图形渲染。
miCreateScreenResources是位于 Xorg 服务器的 mi
(Machine Independent)层,负责 初始化屏幕的资源,主要是 为屏幕创建和管理根窗口的 Pixmap(像素缓冲区) 。miCreateScreenResources的代码如下:
/*
* 创建屏幕资源(Pixmap 或 framebuffer)
*/
Bool miCreateScreenResources(ScreenPtr pScreen)
{
miScreenInit