基于linux和minigui的嵌入式系统软件开发指南讲述.doc

基于linux和minigui的嵌入式系统软件开发指南讲述.doc

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于linux和minigui的嵌入式系统软件开发指南讲述

基于 Linux 和 MiniGUI 的嵌入式 系统软件开发指南 魏永明 2001年 目录 主题一:选择MiniGUI-Threads 或者 MiniGUI-Lite 3 主题二:理解消息循环和窗口过程 9 主题三:对话框和控件编程 20 主题四:使用 GDI 函数 34 主题五:MiniGUI 1.1.0 版本引入的新 GDI 功能和函数 52 主题六:MiniGUI 提供的非 GUI/GDI 接口 65 主题七:MiniGUI 1.1.0 引入的新 GDI 功能和函数之二 84 主题八:MiniGUI和其他嵌入式Linux上的图形及图形用户界面系统 98 主题一:选择MiniGUI-Threads 或者 MiniGUI-Lite 自 MiniGUI 从 1998 年底推出以来,越来越多的人开始选择 MiniGUI 在 Linux 上开发实时嵌入式系统。为了帮助嵌入式软件开发人员使用 MiniGUI编写出更好的应用程序,我们将撰写一系列文章讲解基于 Linux 和 MiniGUI 的嵌入式系统软件开发,并冠名基于 Linux 和 MiniGUI 的嵌入式系统软件开发指南。本文是该系列文章的第一篇,将讲述如何针对具体项目选择使用 MiniGUI-Threads 或者 MiniGUI-Lite 版本,并比较不同版本对系统软件结构的影响。 1:引言 自 MiniGUI 从 1998 年底推出以来,越来越多的人开始选择 MiniGUI 在 Linux 上开发实时嵌入式系统。MiniGUI 系统也逐渐成熟,并在各种嵌入式系统中扮演了重要的角色。为了帮助嵌入式软件开发人员使用 MiniGUI编写出更好的应用程序,我们将撰写一系列文章讲解基于 Linux 和 MiniGUI 的嵌入式系统软件开发,并冠名基于 Linux 和 MiniGUI 的嵌入式系统软件开发指南。该系列文章将讲述如何在基于 Linux 的系统上利用 MiniGUI 开发具有图形用户界面支持的嵌入式系统软件,其内容不仅仅限于 MiniGUI 的编程,还会涉及到一些 Linux 下嵌入式系统软件开发的技巧。系列文章的初步规划如下: 如何针对特定项目选择 MiniGUI-Threads 和 MiniGUI-Lite 理解消息循环和窗口过程 对话框和控件编程 使用 GDI 函数 MiniGUI 和 Linux 系统调用 MiniGUI-Lite 与进程间通讯 将 MiniGUI 及应用程序移植到特定平台 利用 autoconf 接口编写跨平台代码 如何调试 MiniGUI 应用程序 本文是该系列文章的第一篇,将讲述如何针对具体项目选择使用 MiniGUI-Threads 或者 MiniGUI-Lite 版本,并比较不同版本对系统软件结构的影响。 2:MiniGUI-Threads 和 MiniGUI-Lite 的区别 大家都知道,我们可以将 MiniGUI 编译成两个截然不同的版本,一个是 MiniGUI-Threads,一个是 MiniGUI-Lite。这两个版本适用于不同的应用需求。在选择到底使用 MiniGUI-Threads 还是 MiniGUI-Lite 之前,我们首先需要了解这两个版本之间的区别。 MiniGUI-Threads 是 MiniGUI 的最初版本。MiniGUI 最初为一个工业控制系统开发的,该系统功能单一,但却需要非常高的实时性,因此考虑将 MiniGUI 开发成一个基于多线程的图形用户界面支持系统。因为在传统的 UNIX/Linux 系统上,典型的 GUI 系统(比如 X)采用传统的基于 UNIX 套接字的客户/服务器系统结构。在这种体系结构下,客户建立窗口、绘制等等都要通过套接字传递到服务器,由服务器完成实质工作。这样,系统非常依赖于 UNIX 套接字通讯。而大家都知道,UNIX 套接字的数据传递,要经过内核,然后再传递到另外一个程序。这样,大量的数据在客户/内核/服务器之间传递,从而增加了系统负荷,也占用了许多系统资源。这对许多嵌入式系统,尤其是实时性要求非常高的系统来说,是不可接受的。 为了解决这个问题,MiniGUI 首先采用了线程机制(类似Windows CE),所有的应用程序都运行在同一个地址空间,这样,大大提高了程序之间的通讯效率,并且特别适合于实时性要求非常高的系统。这就是 MiniGUI-Threads。基于 MiniGUI-Threads 的程序,可以具有多个线程,每个线程有不同的功能和任务,并且可以建立各自的窗口,不同的线程之间,可以通过 MiniGUI 提供的消息传递机制进行事件传送和同步。 但显然,这种基于线程的结构也导致了系统整体的脆弱――如果某个线程因为非法的数据访问而终止

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档