嵌入式系统中的GUI开发
扫描二维码
随时随地手机看文章
作者:穆煜,华清远见嵌入式培训中心讲师
近年来手持式设备、消费类电子产品得到了飞速的发展。随着这些产品用户的增多,对其用户界面也提出了越来越多的要求。在这类产品刚进入市场的时候,例如,手机、PDA、数字机顶盒等,这类产品的用户界面都比较单一,而到了今天,我们可以看到,在市场销售的这些电子产品都具有漂亮的图形用户界面,甚至要求能够支持全功能的浏览器,使得用户能够随时随地进行网络信息的浏览。但是,由于消费类电子的成本敏感性特点,这些产品大多数希望建立在一个有限占用系统资源的轻量级GUI系统之上,这与 PC机中 GUI 系统有根本性的区别。
另外一个轻量级GUI系统的需求存在于工业控制领域、由于工业控制领域对实时性的要求比较高,所以这些系统也不希望建立在庞大的、响应迟缓的GUI系统之上。尤其是在实时Linux系统出现以后,由于Linux系统的稳定性、可靠性、易移植性以及其广泛的软硬件支持,Linux 系统在工业领域也得到越来越多的应用,而一个轻量级的GUI系统也正是这类系统所需要的。
从用户的观点来看,GUI是系统的一个最至关重要的方面:用户通过 GUI 与系统进行交互, 所以 GUI 应该易于使用并且非常可靠。从开发者的角度看,GUI 是一个友好的开发环境,开发者无需经过艰苦的学习就能适应开发过程,这样才能使得基于此平台的应用很快地丰富起来。对于二次开发商而言,也才有兴趣使用此产品为终端产品制造商提供解决方案。
目前,在嵌入式产品的GUI开发中,应用最多的有Qt/Embedded、MiniGui等。这些系统发展已经比较成熟,同时也得到了较为广泛的应用,例如Qt/Embedded目前已使用到PDA和手机产品中,而MiniGui等轻量级的GUI系统在工控机、机顶盒等产品中也得以发挥其价值。当然它们还存在着一些缺陷,例如Qt/Embedded来源于PC系统的Qt,尽管经过了裁剪,系统任然比较庞大,静态空间占用在10M以上,而动态空间占用一般在16或32M的空间上才能运行比较流畅,另外Qt/Embedded的运行效率不高,无法在较低端的系统上运行。而MiniGui为了降低系统设计的难度,采取了一些不利于二次开发的策略,同时对应用作了诸多限制。
“本文由华清远见http://www.embedu.org/index.htm提供”
华清远见