DirectFB图形库网络透明层的分析与开发
2012-09-25王昆李众立
王昆,李众立
(西南科技大学 计算机科学与技术学院,绵阳 621010)
引 言
随着三网融合工程的开展,多频互动逐渐成为嵌入式厂商讨论宣传的热点。所谓多屏互动是指:电视可与电脑、智能手机等设备实现多屏互联互通,即手机可以像遥控器一样控制电视,电视能浏览播放手机,电脑上的图片和音视频文件等。这些嵌入式设备一般都通过无线路由器连接在一个局域网内,通过IP协议通信。DirectFB作为优秀的嵌入式图形库,通过新近开发的Voodoo模块作为网络透明层,为多屏互动提供了一种简洁、高效、通用的解决方案。
1 DirectFB图形库简介
DirectFB是一个轻量级的图形库,提供图形处理的硬件加速支持、输入管理、集成的窗口管理系统,支持透明窗口和多层叠加(通过alpha值)显示。它不仅仅是基于Linux Framebuffer之上的新设备,还是一个完整的支持硬件加速的封装层,对每一个不被底层硬件加速支持的操作都提供软件实现。DirectFB为嵌入式平台提供图形系统支持,建立了位于Linux Framebuffer之上的一个新的图形库标准。DirectFB由C语言开发,通过封装机制向上层应用程序开发提供接口。DirectFB为应用程序提供的主要接口有IDirectFB、IDirectFBSurface、IDirectFBWindow、IDirectFBEventBuffer等十余个,应用程序主要就是使用这些接口进行开发。
2 Voodoo的分析与设计
2.1 Voodoo模块简介
Voodoo是DirectFB的网络透明层,它能使一个平台上的DirectFB应用程序不经任何修改通过网络在另一个平台上运行,就好像这个应用程序本身就在这个平台上一样。要通过Voodoo运行DirectFB应用程序,首先在服务器端运行dfbproxy程序。这是DirectFB里面的一个新程序,它仅仅等待网络连接(Voodoo使用的端口是2323),甚至不调用最基本的DirectFBCreate()函数,直到客户端请求调用此函数。……
