嵌入式linux图形界面开发介绍一、Linux图形领域的基础设施Linux的基本图形函数库,主要包括:SVGALib、XWindow、FrameBuffer等,它们通常是作为其他中级图形或则图形应用程序的基本函数库。1.1、SVGALibSVGALib是Linux系统中最早出现的非X图形支持库。这个库从最初对标准VGA兼容芯片的支持开始,仍然发展到对旧式SVGA芯片的支持以及对当今流行的中级视频芯片的支持。它为用户提供了在控制台上进行图形编程的插口嵌入式linux下界面开发,使用户可以在PC兼容系统上便捷地获得图形支持。并且该系统的插口有些零乱。SVGALib从最初的vgalib发展而至,保留了老系统的许多插口,而这种插口却不能更好的讨好新显示芯片的图形能力,不能较好地隐藏硬件细节。许多操作,不能手动使用显示芯片的加速能力支持。1.2、XWindowXWindow是Linux系统中使用的最多的桌面图形系统支撑库,各个厂家的KDE,GONE等桌面系统都是以XWindows为基础linux操作系统培训,在XWindows基础里面可以运行着包括CAD建模工具和办公套件在内的大量应用程序,XWindow为了满足对游戏、多媒体等应用对图形加速能力的要求,提供了DGA(直接图形访问)扩充,通过该扩充,应用程序可以在全屏模式下直接访问显示卡的帧缓冲区,并才能提供对个别加速功能的支持。

1.3、FrameBufferFrameBuffer是一个提供显示显存和显示芯片寄存器从数学显存映射到进程地址空间中的设备,是内核的一种驱动程序的插口,这些插口将显示设备具象成缓冲区,用户可以将它看成是显示显存的影像,可以通过对FrameBuffer直接操作来实现对显示设备的控制,FrameBuffer总的具象文件为fbcon.c,不同硬件设备各自实现fbcon.c中的插口,如三s3c2410芯片的实现文件为s3c2410fb.c。该驱动程序的设备文件通常是/dev/fb0、/dev/fb1等等二、几种常见的嵌入式linux图形用户界面常见的嵌入式linux图形用户界面有Qt/Embeddedlinux设置环境变量,MiniGui,MicroWindows2.1Qt/EmbeddedQt/Embedded是Qt库开发商TrollTech(英国奇趣科技)开发的面向嵌入式linux系统的Qt版本,与许多基于Qt的XWindow程序可以十分便捷地移植到Qt/Embedded版本上,Qt/Embedded是使用C++编撰的函数库嵌入式linux下界面开发,对硬件资源的要求比较高。

目前,该系统采用两种条款发布,如个人学习、研究应遵守GPL条款;假如要开发商业程序,需向TrollTech缴纳一定授权费用。2.2MiniGUIMiniGUI是由北大魏永明主持编撰,如今由上海飞漫公司开发、发布,自1998年开始使用,至今早已比较成熟、稳定,可以应用在包括手持设备、机顶盒、游戏终端等等在内的各类高档或则高端的嵌入式系统当中,可以在基于ARM、MIPS、StrongARM以及PowerPC等的嵌入式系统上运行。目前MiniGUI也包括开源版本和商业授权版本,MiniGUI的开源版本为MiniGUIV1.3.3及MiniGUI-STRV1.6.2,个人可以下载学习研究,商业授权版本需向飞漫公司支付一定的费用。

本文原创地址:https://www.linuxprobe.com/ltxlydjcssld.html编辑:刘遄,审核员:暂无