基于ARM-Linux的MiniGUI的仿真与移植
近几年,随着嵌入式系统的日益发展和32位嵌入式处理器以及图形显示设备的广泛应用,目标产品对GUI(图形用户界面)的需求越来越多。由于嵌入式系统一般实时性要求很高,所以嵌入式系统下的GUI需要具有轻量级型、占用资源少、高性能等特点。此外,嵌入式系统往往是一种定制设备,它对GUI的需求各不相同,因此,GUI必须也可以定制。而MiniGUI是一个非常适合实时嵌入式产品的高效、可靠、可定制、小巧灵活的图形用户界面支持系统,被广泛的应用于高端科技产品中。利用MiniGUI开发出良好的人机交互界面已成为嵌入式开发中的迫切需求。本文实现了在ARM-Linux环境下进行基于QVFB的MiniGUI的模拟开发、调试,通过在PC机上的仿真模拟,将应用程序完成之后,利用交叉编译工具编译产生在目标机上运行的代码,然后把MiniGUI和可执行应用程序移植到S3C2410目标板上,这样既节省了开发时间,又提高了开发效率和质量。
1 MiniGUI的特点和体系结构
MiniGUI项目的最初目标是为基于Linux的实时嵌入式操作系统提供一个轻量级的图像用户界面支持系统。作为操作系统和应用程序之间的中间件,MiniGUI将底层操作系统与硬件平台之间的差别隐藏起来,并对上层应用程序提供了一致的功能特性。
1.1MiniGUI的特点
(1)占用资源少:MiniGUI本身占用的空间非常小,整个MiniGUI系统占用空间在2~4MB,在某些系统上,MiniGUI系统本身所占用的空间可进一步缩小到1MB以内。
(2)高性能、高可靠性:MiniGUI良好的体系结构及优化的图形接口,可确保最快的图形绘制速度。
(3)可定制配置:和Linux内核类似,MiniGUI也具有大量的编译配置选项,通过这些选项可指定MiniGUI库中包括哪些用户所需要的功能。
(4)跨操作系统支持:MiniGUI支持Linux/uClinux、eCos、uC/OS-II、VxWorks等嵌入式操作系统。同时,在不同操作系统上的MiniGUI,提供完全兼容的API接口。
1.2MiniGUI的体系结构
从整体结构上看,MiniGUI采用的是分层设计的,结构如图1所示。
图1 MiniGUI的分层体系结构
在最底层,GAL(图形抽象层)和IAL(输入抽象层)及鼠标和键盘的驱动;中间层是MiniGUI的核心层,包括窗口系统必不可少的各个模块;最顶层是API,即编程接口。GAL和IAL为MiniGUI提供了底层的Linux控制台或者X-Window上的图形接口以及输入接口,而 Pthread用于提供内核级线程支持的C函数库。利用GAL和IAL,大大提高了MiniGUI的可移植性,并且使程序开发和调试变得更加容易。
2 MiniGUI在QVFB上的仿真应用
相关文章
- 2024-01-23JB/T4730.2-2005中关于底片黑度及亮度值得注意的几个问题
- 2024-03-26一种新型调焦机构设计
- 2024-08-27肋板式吸附式制冷系统试验研究
- 2022-04-26可适应多种时序情况的DMA控制器设计
- 2022-04-21ZigBee无线传感器网络在远程环境监测中的应用设计



请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。