DirectFB 项目是由德国 Convergence 公司推动的 Open source 计划的一部分,它是专门为满足嵌入式设备要求而开发的小巧、强大、灵活和易于使用的图形系统,并且试图成为一个建构于 Linux Framebuffer Device 之上的新图形标准。它在 FrameBuffer 的基础上提供了图形加速、输入设备处理提取、透明窗口和多重显示层的功能,能够对嵌入式系统 GUI 有较好的支持。与那些通用的嵌入式 GUI 系统相比,它具有非常简洁、高效的体系结构和硬件图形加速功能。DirectFB依靠内核中的Framebuffer设备驱动(/dev/fb)所提供的现有接口来访问图形硬件。这就意味着DirectFB必须要有一个能够正常工作的Framebuffer设备驱动才能正常运行。有些芯片组需要在Linux内核中有特定的Framebuffer驱动。
directFB向上提供了什么接口:
概述:directFB最主要的是设置环境变量,其所有功能块都是通过.so文件,在上层应用(如Qt等)执行的时候,动态加载的。
1.
2.
3.
directFB向下层的frameBuffer的交互:
概述:主要是通过
gfxdriver模块和下层的frameBuffer交互。交互时通过共享内存实现的,那么共享地址是怎么传递的呢?
1.调用dfb_fbdev_open()打开framebuffer设备(如ÿ