为了使 linux 下图形更加流畅,必须使用加速。常用的加速方法如下
加速常见有三种方式
a ) ShadowFB
ShadowFB 是 xserver 自带的与体系结构无关的 2D 加速方式,它将系统 framebuffer 复制一份,并且在拷贝回 framebuffer 中实现图形旋转等操作,这样可以起到一定加速作用,但是效果不好。
b) XAA
XAA 全称 XFree86 Acceleration Architecture ,是由 Harm Hanemaayer 在 1996 年写的一个显卡硬件 2D 加速的驱动结构,目前大多数的显卡去动均支持这种驱动模式
c) EXA
EXA 是 X.Org 发起的用于取代 XAA 加速的驱动结构,修改的宗旨是是 XRender 更加好用。
历史上对 2D 和 3D 加速已经做了区分, 2D 加速主要使用的是 XAA 结构, 3D 加速主要是通过 DRM ( Direct Rendering Manage) 提供 . 而 EXA 提供了比 XAA 更好集成 XRender 的结构,同时也提高了 XAA 的 2D 加速效果。
EXA 采用的方法是通过实现对 OpenGL 的加速以实现同时对 2D , 3D 图像的加速,这样 2D 图像就可以看作是 3D 图像的一个子集。