- 1、本文档共45页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MiniGUI和Qt界面比较 MiniGUI是一种面向嵌入式系统和实时系统的图形用户界面支持系统。它主要运行于Linux控制台,实际可以运行在任何一种具有线程支持的POSIX兼容系统上。MiniGUI同时也是国内最早出现的几个自由软件项目之一。与Microwindows相比,MiniGUI和MicroWindows均为自由软件,只是前者遵循LGPL条款,后者遵循MPL条款。这两个系统的技术路线也有所不同。MiniGUI的策略是首先建立在比较成熟的图形引擎之上,比如 SVGALib和LibGGI,开发的重点在于窗口系统如图形接口; MicroWindows目前的开发重点则在底层的图形引擎,窗口系统和图形接口方面的功能还比较欠缺。举个例子来说,MiniGUI有一套用来支持多字符集和多编码的函数接口,可以支持各种常见的字符集,包括GB、Big5、Unicode等,而MicroWindows在多字符集的支持上尚没有统一接口。 如何获取MiniGUI 目前,MiniGUI可免费下载的稳定版本是1.3.3。可以从北京飞漫软件技术有限公司的网站下载MiniGUI源代码、开发文档及示例程序。免费下载的MiniGUI只能用于开发GPL或其他公开源码的应用软件,如果您要利用MiniGUI开发专有或商业软件,则必须从北京飞漫软件技术有限公司购买商业授权。 PDA、机顶盒、DVD播放机、 MiniGUI 最初是为了满足一个工业控制系统(计算机数控系统)的需求而设计和开发的。这个工业控制系统是清华大学为一台数控机床设计的计算机数控系统(CNC)。在比较 DOS、Windows 98、Windows NT、Linux 等系统之后,该项目组决定选择 RT-Linux 作为实时操作系统,以便满足 2ms 甚至更高的实时性。但是图形用户界面是一个问题,因为 X Window 不适合于实时控制系统,并且当时 X Window 系统的本地化也不尽人意。因此,决定自己开发一套图形用户界面支持系统。这就是 MiniGUI 产生的背景。显然,MiniGUI 一开始就针对实时系统而设计,因此,在设计之初就考虑到了小巧、高性能和高效率。目前,这个数控系统的开发已近尾声,MiniGUI 在其中担当了非常重要的角色。 ??? 在考虑到其他不同于数控系统的嵌入式系统时,为了满足千变万化的需求,必须要求 GUI 系统是可配置的。在 CNC 系统中得到成功应用之后,我们立即着手于 MiniGUI 可配置的设计。我们通过 Linux 下的 automake 和 autoconf 接口,实现了大量的编译配置选项,通过这些选项可指定 MiniGUI 库中包括哪些功能而同时不包括哪些功能。 ??? 因此,MiniGUI 是一个非常适合于工业控制实时系统以及嵌入式系统的可定制的、小巧的图形用户界面支持系统。 MiniGUI需要多线程支持 MiniGUI的许多模块都以单独的线程运行。 利用线程来支持多窗口 MiniGUI利用线程之间的同步操作实现了客户线程和服务器线程之间的微客户/服务器机制 9.3.1 MiniGUI主要特点 模式1 MiniGUI-thread 可以在不同的线程中建立多个窗口,但所有的窗口都在一个进程空间 特点:占用资源少,控制简单 对系统可靠性有影响 9.3.2 MiniGUI的三种模式 模式2 MiniGUI-lite 每个程序都是单独的进程,每个进程可以建立多个窗口,进程之间、窗口之间互不影响。 特点:占用资源多,较好解决了进程间窗口管理 9.3.2 MiniGUI的三种模式 9.3.2 MiniGUI的三种模式 模式3 MiniGUI-Standalone MiniGUI以独立进程方式运行,当其它进程有需要时候,每次只能以最大化的方式显示一个窗体。 特点:几乎可以运行在所有操作系统上,应用最广的模式。 9.3.3 MiniGUI配置和交叉编译 Step1. 宿主机上配置Framebuffer 需要激活VESA Frame Buffer驱动程序 修改/boot/grub/menu.lst文件, Title Red Hat Linux(2.4.x, framebuffer) Root(hd0,0) Kernel /boot/vmlinux-2.4.x ro root=/dev/hda1 vga=0x0317 initrd /boot/initrd-2.4.x.img Framebuffer是linux内核的一种驱动程序接口,这种接口将显示设备抽象为帧缓冲区。Framebuffer通过缓冲区提供了使用显示设备的一般接口 9.3.3 MiniGUI配置和交叉编译 Step2.
您可能关注的文档
- 第二篇 物料装卸搬运系统分析.ppt
- 第二篇 C# 中对象的创建1.ppt
- 第二篇 Project2007的操作界面.pdf
- 第二篇 创建表间关系.ppt
- 第二篇 公钥密码体制身份认证.ppt
- 第二篇 密码学概论.ppt
- 第二篇 使用Windows Sockets 9.pdf
- 第二篇 数据库的概念结构设计.doc
- 第二篇 水静力学 5-6.ppt
- 第二篇 线性尺寸精度设计.ppt
- 新高考生物二轮复习讲练测第6讲 遗传的分子基础(检测) (原卷版).docx
- 新高考生物二轮复习讲练测第12讲 生物与环境(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第3讲 酶和ATP(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第9讲 神经调节与体液调节(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第11讲 植物生命活动的调节(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第8讲 生物的变异、育种与进化(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第5讲 细胞的分裂、分化、衰老和死亡(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第5讲 细胞的分裂、分化、衰老和死亡(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第12讲 生物与环境(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第11讲 植物生命活动的调节(检测)(原卷版).docx
文档评论(0)