Chinaunix首页 | 论坛 | 博客
  • 博客访问: 4470882
  • 博文数量: 1148
  • 博客积分: 25453
  • 博客等级: 上将
  • 技术积分: 11949
  • 用 户 组: 普通用户
  • 注册时间: 2010-05-06 21:14
文章分类

全部博文(1148)

文章存档

2012年(15)

2011年(1078)

2010年(58)

分类: 嵌入式

2011-04-12 17:31:49

http://home.lupaworld.com/home-space-uid-279800-do-blog-id-123330.html

LWEGUI(轻量级嵌入式图形用户接口)是基于GPL的开源嵌入式GUI系统,采用线程模式和类WIN32 API,可以方便移值到大多数现有的主流嵌入式操作系统。
    轻量级:根据不同的使用情况,大小最低可控制在几十K以内;
    高可移值性:LWEGUI在设计时充分考虑了系统的可移值性,全部代码使用C语言完成,并且对跟操作系统相关部分进行了抽象,因些可以轻松移值到现有的大多数嵌入式操作系统,目前提供LINUX跟ECOS的移值。
    为什么使用采用线程模式:目前基本所有实时嵌入式操作系统都采用多线程模式(如VXWORKS、ECOS等),而现有开源GUI(如MINIGUI、 MICROWINDOS等)多使用进程模式或进程加线程模式,使用C/S架构,要么体积庞大效率低下,要么无法进行移值。采用线程模式的GUI系统可以在 多线程实时操作系统以及LINUX等多进程操作系统上运行,同时避免C/S模式效率低下的缺点。作者在网站上见到有人抱怨ECOS这类实时操作系统缺少 GUI的支持,如果使用现有的GUI体积又过于庞大,作者对ECOS有比较深入的研究,决定为ECOS做一个小巧的GUI,这也是导致LWEGUI使用多 线程模式的主要原因。
    为什么使用类WIN32 API:一是由于作者对WIN32 API有一定了解,另一方面作者认为设计一个GUI最繁重的工作是通用控件的编写,使用类WIN32 API可以方便地将其它使用类WIN32 API接口的GUI已完成的控件移值到本系统,当然这些移值要注意相关的知识产权问题。
    LWEGUI最开始的设计目标主要是构建一个小巧的窗口系统,所以对控件的支持还比较贫乏,另一方面作者主要是完成系统的构建,所以对系统中的相关算法和 控件(比如窗口剪切、画线算法等)并没有太多的研究,相关的算法和控件如果是从其它遵循GPL协议的GUI移值过来则标明了出处,主要是为了保护原作者的 知识产权,所以您在使用本软件时也应该要遵循相关的协议,否则可能给您带来麻烦。
    本软件只是作者在无聊之际的作品,同时由于时间仓促,代码质量不高,存在很多BUG,如果您对本软件有兴趣,欢迎对本软件进行更改或者提出宝贵意见,如果您发现了其中的问题,欢迎指正,作者将不胜感激。
    最后申明,本软件是基于GPL的开源软件,所以并不保证软件的完全可靠性,对于使用本软件所造成的任何不良后果,作者不负任何法律责任。
                                                               流浪的狮子
                                                               Zhanbin98154@163.com
                                                               2009-2-19

    下面是ECOS VNC下运行效果图,源码已经上传到。
阅读(3547) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~