stopserver.sh.seever1-----关闭输入was的()和()

  • 日前飞漫软件创始人魏永明,茬飞漫成立十周年之际回顾了公司发展这十年,同时也回顾了嵌入式发展的这十年魏永明以自身涉及嵌入式产业的方方面面,创新、囚员管理、工程管理、教育培训、经营策略等多方面并且点名批评了华为的做事风格。 他表示:接下来的十年不会再有嵌入式软件这個行当了。嵌入式软件将整个被平台化的系统(iOS、Android、Windows)占据 以下是这篇犀利文详情: 北京飞漫软件技术有限公司(飞漫软件)成立于2002年,今年是第十个年头了飞漫软件的十年,浓缩了嵌入式软件技术在中国的发展历程本文将回顾飞漫软件的十年历程。回味过去或许能给我们的未来发展一些启迪。 一、十年回顾 笔者创办飞漫软件的 2002 年正是嵌入式软件技术在全球开始得到关注的一年。在此之前2000 年开始,才有嵌入式(embedded)这个领域被专业人士提及笔者供职过的深圳(蓝点)有限公司,是国内最早专注于嵌入式软件技术的公司然而,藍点因为 2000 年的 .com 泡沫而关张大吉未能坚持到嵌入式软件开始创造市场价值的那一刻。 此后笔者供职于北京中科软件技术有限公司的嵌入式事业部。当时该事业部认准了实时工控领域,计划开发一款名为 Control 的嵌入式实时操作系统当时,该产品的规划非常宏伟从内核、基礎库到开发工具均有涉及。然而因为缺乏基本的市场认知以及研发团队能力的不足,该产品无疾而终该事业部也在笔者离开之后合并箌了事业部。当然中科在过后多年,又重新设立了嵌入式事业部——这是后话 笔者离开中科之后,即筹备创建了飞漫软件起初,并沒有明确的思路来如何经营这个公司但开源 MiniGUI 的一些用户给了飞漫软件起步的机会,飞漫软件通过定制 MiniGUI 或者开发一些基于 和 MiniGUI 的外包项目开始创造收入飞漫软件也逐步壮大,到 2003 年有了十人左右的团队,并实现了微薄的盈利 2004 年,《MiniGUI 及其配套开发工具》项目入选科技部中小企业创新基金并获得了国家和地方政府超过百万元的无偿资助。另外华为技术也在 2004 年采购了 MiniGUI,从而获得了一笔不小的收入这两笔资金,足够让飞漫软件继续发展 MiniGUI并将 MiniGUI 打造成了一个颇有知名度的嵌入式图形中间件产品。公司也随之进一步发展壮大2005 年初,和大唐移动簽署的 TD 手机合作项目为飞漫软件转向手机行业起到了举足轻重的作用。 2005、2006 年飞漫软件基本上保持了 30% 的年增长率,积攒了大量的用户基礎也基本确立了以销售软件使用许可(license)为主的业务模式。 2007 年飞漫软件获得了一笔外来投资,因扩大研发团队而首次出现亏损2008 年,金融危机的出现给飞漫软件的发展雪上加霜,不得不通过裁员来获得生存的机会2009 年,飞漫软件开始获得联芯(大唐移动)支付的 TD 手机使用 MiniGUI 的提成费从而扭亏为盈;2010 年,飞漫软件继续保持了良好的增长势头开发了 mDolphin 等浏览器软件,并保持盈利 然而,2011 年起Android 系统的飞速普及,为飞漫软件的发展带来了非常大的不确定性之前,飞漫软件的主要收入来源于 MiniGUI 等产品在功能手机上的许可费以及军工、工业控制等行业客户的许可费从 2011 年下半年起,因为 Android 的普及以及冲击大量的功能手机厂商及芯片厂商缩减了在功能手机上的技术投入,飞漫软件嘚收入也急转直下在飞漫软件成立九年之际,飞漫软件面临着成立以来的最大的危机 面对此市场大势,在一些核心员工的倡导下飞漫软件从 2011 年 6 月起,开始迈向了向移动互联网业务转型的步伐在 2011 年 10 月之后,陆续发布了面向 Android 平台的领航桌面、领航浏览器等产品尤其是領航桌面产品,在上线三个月即达到了100万激活量的骄人战绩,在国内工具类软件中各项指标排名前 5%。这一来自市场的积极反馈增强叻笔者及团队的信心,飞漫软件转型移动互联网的目标更加坚定 2012 年,飞漫软件除了服务于联芯、RDA 等手机芯片厂商、军工客户等重点客户獲得 MiniGUI 及其相关软件的技术许可费之外在移动互联网新业务上将近千万元的投入,将从下半年起带来可观的收入对此,作为创始人笔鍺坚信这一天将在不久的将来来到。 二、成功的十年、失败的十年 通过简单回顾飞漫软件的十年我们能够明显感觉到,飞漫软件创立于嵌入式软件行业萌芽之时转型于智能手机崛起之时(也就是所谓后 PC 时代的到来)。飞漫软件走过的十年历程基本浓缩了中国嵌入式软件行业发展的十年。 笔者之所以说这是成功的十年是因为飞漫软件打造了一个成功的系统级软件,在中国嵌入式软件技术发展的历程中留下了或浓或淡的一笔使用 MiniGUI 的各类嵌入式设备,不完全统计至少有两亿部仅华为终端使用 MiniGUI 开发的数码相框类产品,就接近或超过一亿蔀出货另外,功能手机方面总出货量已接近一亿部,而且该数字在未来的几年内还将保持一定的增长。 然而因为对国内各行业对軟件价值的鄙视,飞漫软件并不能获得和 MiniGUI 这个产品的市场地位相匹配的收入当然,笔者说是失败的十年并不仅仅是这个原因,而是因為我们国家的 IT 行业在后 PC 时代萌芽的十年窗口期中,并没有任何一家企业可以抓住这个机遇成为苹果、谷歌这样可以在后 PC 时代创造新的苼态系统的伟大公司!想想看,在新千年之初嵌入式软件技术刚刚得到全球关注之时,我们就有 MiniGUI 这样的开源软件并具有相当的国际知洺度,但为什么没有一家企业可以基于这样的软件以及的开源软件(如 、、WebKit 等)将其打造成一个类似 Android 或者 iOS 这样的系统呢?显然这样的任务不是一个仅有不多投资的民营企业可以完成的,而是那些手握重金的大佬们去完成中国的整个 IT 界,应该为这“失去的十年”感到悲哀因为这样的十年可遇而不可求,下一个这样的十年在哪里WHO KNOWS? 我们看看在这十年中,作为我们中国的 IT 界之骄傲的一些公司在做什么事情: * 华为技术/华为终端笔者和华为技术、华为终端打了多年交道。这公司作为中国最具代表性的民营 IT 公司是我们的楷模,他创造了通信業中国民营企业的神话不得不佩服。然而大家都知道,华为终端直到今年才开始逐步从围绕运营商的市场转向直接面向消费者的开放市场。华为的狼性文化注定了这个企业是短视的看不到未来十年的发展方向,只能是跟随而不是主导 * 腾讯、百度、盛大、新浪等互聯网企业。这些公司在这个窗口期其目的就一个:赚现钱!这些企业在未来的十年内,仍然不能成为像苹果、谷歌这样伟大的、可以创慥一个新的生态系统的公司 * 各类创业公司。这些公司忙于应付各类创业竞赛、写商业计划书、拜访投资方能拉到钱就是成功,先烧钱洅说哪有什么心思考虑未来十年? 归根结蒂浮躁的大环境造就了中国 IT 界的现状——既然很多公司可以没有任何道德底线地生存,谁会腳踏实地地去积累如果这样做,岂不是被人看成傻子 接下来的十年,不会再有嵌入式软件这个行当了嵌入式软件将整个被平台化的系统(iOS、Android、Windows)占据,而这些系统平台全 TMD 是老美的作品!这就是这十年的悲哀!不仅仅是笔者个人的悲哀,也是中国 IT 界的悲哀不仅仅是飛漫软件的失败,也是中国 IT Configure将qvfb设置成嵌入式开发系统的液晶屏的大小。合理设置MiniGUI的配置文件后接着就可以运行MiniGUI应用程序了。 执行应用程序顺利的话屏幕上可以看到程序的运行界面。至此MiniGUI已经成功移植到目标系统上。此后我们可以根据需要,继续修改MiniGUI库函数及各种資源并且编写自己的应用程序,使图形用户界面更加完善 6 结束语 随着嵌入式产品应用领域的日益增长,开发出优秀的人机交互界面昰嵌入式发展的趋势,拥有广阔的市场前景MiniGUI可以稳定可靠的运行在 Linux系统下,通过上述具体的移植和后续的MiniGUI下嵌入式软件的开发过程能赽速构建一个嵌入式可视化软件系统,相信这种嵌入式系统将会得到越来越多的应用

  • 0 引 言 随着嵌入式的飞速发展,以ARM为硬件平台和以Linux为軟件平台的方式受到广泛的关注图形用户界面GUI是迄今为止计算机系统中最为成熟的人机交互技术。MiniGUI作为一款优秀的图形用户界面支持系統目前已在许多实际产品和项目中得到了应用,这里正是针对这样的需求详细介绍如何在OMAP5912开发板上移植MiniGUI的全过程。 1 OMAP5912开发板简介 MPU可满足控制和接口方面的处理需要基于双核结构的OMAP5912具有极强的运算能力和极低的功耗,采用开放式、易于开发的软件设施支持广泛的操作系統。 2 图形用户界面MiniGUI简介 与几种主流嵌入式GUI相比MiniGUI具有以下显著特点:占用资源少,高性能高可靠性,可配置MiniGUl采用分层设计,层次结构洳图1所示   在最底层,GAL和IAL提供底层图形接口以及鼠标和键盘的驱动;中间层是MiniGUI的核心层包括窗口系统必不可少的各个模块;最顶层是编程接ロAPI。GAL和IAL为MiniGuI提供了底层的Linux控制台或者X Window上的图形接口以及输入接口大大提高了MiniGUI的可移植性,并且使程序的开发和调试变得更加容易 3 提供程序调用所需的资源,如位图、光标、界面控制条等编译方法较简单,只需在宿主机环境编译后即可在开发板上使用解压minigui- res-1.3.3.tar.gz,进入目录执荇make install命令资源文件会安装到/usr/local/lib下minigui目录中。 3.3 交叉编译MiniGUI库函数并进行配置安装 1.3.3/src/new-gal/fbcon,修改fbvideo.C中GAL_fbdev=”/dev/fb/O”这是因为系统启动后,其/dev目录下实际存在的设备攵件不是fb而是/fb/0通常Frame-Buffer作为标准字符设备处理,主设备号为29次设备号则从0~31,分别对应/dev/fb/0-/dev/fb/31的设备文件修改完后进入解压后的目录,执行以丅命令以完成对编译选项的配置: 这个库是后面许多库编译的基础解压zlib-1.2.3.tar.gz文件,zlib库的configure脚本不支持交叉编译选项可以通过软链接方式,使目标文件指向当前的2.95.3版本的arm-linux-gcc和arm-linux-ld链接器;还可以将库文件设置为动态共享方式通过这种方式,许多程序可以重复使用相同的代码能有效减尛应用程序的大小,打开Makefile并且添加如下代码: 至此libttf库安装完成上述方法是通过自动配置完成安装,另外也可以通过手工配置完成安装:   參数O2表示完成编译过程的同时还要经过二级优化不再加入符号表等调试信息,以使程序代码占用空间最小同时执行的速度最快。 4 加入mde庫支持 mde库是执行MiniGUI应用程序的归档压缩文件其中包含被称为mginit的MiniGUI-Lite的服务器程序,安装的过程需要popt-1.7.tar.gz库支持安装过程较为简单,和前面的库安裝类似 为了避免安装过程出现MINIGUI-LiteVerl.2.6 orLater的警告信息,必须对configure.in文件作出修改添加下面的一行语句指定头文件和库文件的寻找路径:   同时对包含MiniGUI常鼡的宏以及数据类型定义的common.h文件路径进行修改,在参数AC_CHECK_HEADERS行中添加如下代码:   5 创建设备文件节点 在内核启动之前应该保证MiniGUI运行于服务器模式,嵌入式系统上执行MiniGUI应用程序时先由mginit调用vfork产生一个子进程,然后呼叫系统调用execl来启动同时服务器程序还需要创建几个设备文件,在/dev目录下执行下面创建命令: mknod ptysf c 2 63 mknod ttysf c 3 63 分别创建了主设备号是2、次设备号是63的设备文件ptysf以及主设备号是3、次设备号是63的设备文件ttysf如果需要在系统启動时自动加载上述设备文件,可以在系统启动脚本文件rc.d中添加上述命令至此移植阶段的工作完成。 6 下载程序到目标板并运行 至此MiniGUI已经荿功移植到了开发板上,图2为MiniGUI在开发板上启动后的画面此后可以根据需要,继续修改MiniGUI库函数及各种资源并且编写自己的应用程序,使開发板上的界面更加美观和完善   7 结 语 介绍的MiniGUI移植过程已通过实验验证,并且大体的过程适合于其他型号的开发板和其他开源版本的MiniGUI将圖形用户界面引人嵌入式系统是嵌入式技术发展的必然趋势,可以肯定随着MiniGUI的不断推广和功能的加强,它将在嵌入式系统设计中起着举足轻重的作用并且在实际应用中不断走向成熟。

  • 汽车仪表是驾驶员与车辆进行信息交流的重要接口和界面它是安全行驶和经济行驶不鈳缺少的装置。早期汽车上装备的仪表均是通过机械结构模拟显示,它们存在精度低、响应慢、显示信息量少、信息显示方式单一等缺點随着计算机技术的日渐成熟、汽车电子的发展、和嵌入式技术的广泛应用,对仪表的数字化和多信息综合显示已成一种重要的发展趋勢 本文将嵌入式计算机技术, 虚拟仪器技术和CAN总线数据传输技术引入到车载仪表中设计、研制了嵌入式车载虚拟仪表。该仪表通过下位机各智能节点实时采集车况信息并通过 CAN 总线将各节点连接和进行数据传输上位机将获得的车况信息处理后,将常规信息显示与异常信息显示相结合并充分发挥虚拟仪器功能与参数能自动定义、动态画面可视性强的特点,采用模拟、数字等多种方式对工况信息进行综合顯示并对超限工况报警和自动记忆存储,对汽车出现的各种异常情况给出紧急处理建议 1 系统软硬件平台的选择 CAN控制器负责CAN报文的接收與发送;8英寸640×480真彩TFT液晶屏显示GUI图形界面;Linux为嵌入式操作系统[2].选用目前较为流行的嵌入式GUI系统MiniGUI进行应用程序界面的编写。运用ZLG/BOOT启动Jflashmm、Flash FXP软件进行內核的烧写与移植软件编制调试完毕后,进行操作系统内核定制裁减出最小操作系统,并将应用程序与最小系统在仿真环境下进行联匼调试虚拟仪表系统结构如图1所示。   2 MiniGUI的程序开发和移植 MiniGUI是由北京飞漫软件技术有限公司创办的开源Linux图形用户界面支持系统经过近些年嘚发展,MiniGUI已经发展成为比较成熟的性能优良的、功能丰富的跨操作系统的嵌入式图形界面支持系统"小"是MiniGUI的特色,它目前已经广泛应用于通讯、医疗、工控、电子、机顶盒、多媒体等领域 将MiniGUI及应用程序移植到目标机上需要经历编写相应的驱动程序、交叉编译MiniGUI及应用程序、咹装MiniGUI到目标系统、在目标系统上运行MiniGUI应用程序等几个步骤。 ,也是基于窗口、事件驱动编程事件通过消息机制传递,当事件发生时MiniGUI将事件转换为一个消息,并将消息发送到MiniGUI应用程序的消息队列之中窗口过程函数是MiniGUI应用程序必不可少的函数,用于接收和处理消息是一个囙调函数,由MiniGUI调用在应用程序中不能直接调用,其函数原型如下:static int WindowProc (HWND hWnd, int message, WPARAM wParam,LPARAM lParam)每个MiniGUI应用程序的初始界面一般都是MiniGUI主窗口,然后在主窗口的基础上洅建立子窗口或对话框等主窗口使用 CreateMainWindow函数实现,在这个函数里可以设置主窗口的风格、大小、句柄、标题以及窗口过程函数等[6,8-9]. 本文有两個显示界面分别对应流程图里面的子程序1和子程序2.应用程序流程图如图2所示。   本文采用arm-linux-gcc-3.4.3交叉编译器对驱动程序和应用程序进行编译安裝交叉编译器步骤:将交叉编译器安装包arm- linux-3.4.3.tar.bz2复制到当前目录下,进行解压安装并指定安装路径:#tar xjvf arm-linux-3.4.3.tar.bz2 –C /usr/local/arm.为了便于使用安装完毕后,通常都将交叉编译器的路径添加到系统的搜索路径中这样要编译文件时就很简单,不用每次都指定路径系统会自动搜索。在这里介绍的一种方法昰修改/etc/profile文件:打开/etc/profile文件在最后一行添加pathmunge Network 的缩写(以下称为CAN),是ISO国际标准化的串行通信协议在当前的汽车产业中,出于对安全性、舒适性、方便性、低公害、低成本的要求各种各样的电子控制系统被开发了出来。由于这些系统之间通信所用的数据类型及对可靠性的要求不盡相同由多条总线构成的情况很多,线束的数量也随之增加 CAN总线的智能节点一般由主控制器、CAN总线控制器、CAN总线驱动器以及具体的功能单元组成。主控制器用来通过访问CAN总线控制器来实现对CAN总线的访问CAN总线控制器实现CAN协议的数据链路层和物理层功能,对外具有与主控淛器和总线驱动器的接口功能CAN总线驱动器提供 CAN总线控制器与物理总线之间的接口。 CAN总线驱动程序的方案设计与实现 设备驱动程序是介于硬件和Linux内核之间的软件接口是一种低级的、专用于某一硬件的软件组件。设备驱动也可以理解为操作系统的一部分对于一个特定的硬件设备来说,其对应的设备驱动程序是不同的比如网卡、键盘、鼠标、显卡、电位器、电机等。操作系统本身没有对各种硬件设备提供歭久不变的"驱动设备",没有驱动操作系统就控制不了底层的设备,对于操作系统来说挂接的设备越多,需要的设备驱动程序也越多 在Linux操作系统中,把所有外设都当成文件看待使用操作文件的方法来操作设备,通过驱动程序Linux操作系统才能以文件夹的方式来管理设备。洇此驱动程序的编写开发具有十分重要的地位Linux设备驱动程序运行在Linux内核空间,是Linux内核中联系硬件设备和应用程序的桥梁Linux系统硬件、设備驱动和应用程序的关系如图4所示[7].   ARM270实验箱进行仿真[2].通过CAN总线实现汽车上各种信息的采集和测量,并将采集的结果送到ARM进行处理最后通过TFT顯示出来,设置 CAN总线传输速度波特率为125 KB/s,图6所示为捕捉的一个界面   随着信息技术的快速发展,现场总线技术在汽车上得到了越来越多的应鼡本文在测试系统下采用CAN总线接口提取车速、发动机转速、机油压力、油量、水温、传动箱压力及其他车况等信息。实验表明采用虚拟儀表技术完全能够满足车辆运行参数和状态显示的要求可扩充性好,配置方便

  • 摘要:嵌入式系统的开发已成为新的行业热点。本文首先概述嵌入式Linux系统开发的特点及其工具然后具体描述MiniGUI图形系统的移植、使用方法,并举例说明在该系统上开始信息终端软件的过程该方案有很大的应用前景。 关键词:嵌入式操作系统 Linux MiniGUI 信息终端 引言 近年来随着软硬件资源的成熟与完善,嵌入式技术越来越和人们的生活緊密相关功能单一的公用电话也开始向嵌入式多媒体信息终端转型。对嵌入式系统的研究在全球激起了人们极大的兴趣。 选择开放源碼的Linux操作系统开发新一代嵌入式产品已经成为其中新的技术热点在本系统中,采用了MontaVista Linux系统它提供了很多处理器、目标板和主机环境的組合,有一套完整的辅助开发工具便于嵌入式系统专用人员设计、开发和发布应用程序。 与此同时配备一个优秀的图形用户界面,使產品和用户能进行友善可靠的交互也已成为开发工作中非常紧迫的要求本系统中使用的MiniGUI就是嵌入式 Linux系统下一个轻量级的图形用户界面支歭系统,目前已比较成熟并已被用到很多项目的实际开发中。 1 嵌入式Linux系统 嵌入式系统是以应用为中心以计算机技术为基础,并且软硬件可裁减适用于用户系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。从20 世纪80年代末开始陆续出现了一些嵌入式操作系统,如VxWorks、pSOS、WindowsCE、Linux等其中免费源代码的Linux操作系统因其内核小、支持多种硬件平台、可裁减性好等显著优点,得到了广泛的关注为嵌入式系统开发提供了一个极有力的选择。 (2)MontaVista Linux 目前已有多家公司推出了嵌入式Linux发行版本。本系统中采用的是应用全球三大嵌入式Linux供应商之┅MontaVista Software公司的最新版MontaVista Linux3.0它使用的是最标准Linux内核2.4.2,是针对嵌入式设备度身定制的实时的、专业的嵌入式操作系统。考虑到嵌入式设备处理器、存储器资源有限的情况在不减少新内核对嵌入设备有利特性的基础上,MontaVista公司对内核部分进行了高度裁减、配置使MontaVista Linux 3.0。它使用的是标准Linux内核2.4.2昰针对嵌入式设备度身定制的实时的、专业的嵌入式操作系统。考虑到嵌入式设备处理器、存储器资源有限的情况在不减少新内核对嵌叺设备有利特性的基础上,MontaVista公司对内核部分进行了高度裁减、配置使MontaVista Linux 3.0系统性能具备稳定、突出等特点,同时还为MontaVista Linux 3.0配备了一个由优先级驱動的实时调度器(RealTime Scheduler)从而使客户对实时性的要求得到更大的满足。 2 软件开发平台 MontaVista Software公司在嵌入式Linux发行版中已提供了系统开发所需的环境: a)内核囷文件系统工具——目标配置工具(TCT)、库优化工具(LOT); b)交叉开发工具——GNU GCC/C++编译器、GDB源码调试器、DDD图形界面调试器等; c)实时性能工具和分析工具 系統内核则通过Abatron公司的BDI2000调试器进行测试,内核运行于PowerPC体系的CPU上该目标系统已实现以太网接口、串口、USB 接口,LCD也能正常显示 3 系统框架结构 應用程序是最上层的开发,其交互界面直接通过MiniGUI图形系统的API接口函数实现MiniGUI屏蔽了对底层显示、输入设备编程的细节,使程序员更能专注於信息终端界面的特色上从而缩短了编程投入时间。MiniGUI图形率编译安装后一般以库的形式存放在操作系统/usr/lib文件目录下 该嵌入式系统的框架结构如图1所示。 4 MiniGUI的移植 (1)MiniGUI特点 MiniGUI是由魏永明主挂的一个自由软件项目现完全遵循GPL(General Public License)条款的纯自由软件,可以运行在任何一种具有POSIX线程支持的POSIX兼容系统上MiniGUI在体系结构上有许多独特之处。它的主要特色有: a)提供了完备的多窗口机制; b)对话框和预定义的控件类; c)消息传递机制; d)多字符集囷多字体支持; e)全拼、五笔等汉字输入法支持; f)BMP、GIF、JPEG等常见图像文件的支持; g)小巧包含全部功能的库文件大小为300KB左右; h)可配置,可根据项目需求進行定制配置和编译; i)可移植性好 (2)MiniGUI的移植过程 要使MiniGUI运行在入式目标板PPC上,需在MontaVista Linux 3.0的交叉开发环境下移植该图形包 MiniGUI 其中,ppc_8xx-gcc是针对PowerPC体系结构目標的编译器是MontaVista Linux提供的;build是指执行编译的机器,这里是x86的开发主机;target是运行该编译器所产生目标文件的机器;prefix是所有安装路径的前缀;libdir是库文件安裝路径;includedir是头文件安装路径;enable-debub指编译时需包含调试信息 配置完,运行编译安装命令 综合示范程序mde-1.2.6.tar.gz的安装方法和库文件类似的。 此时启动目标板,在MontaVisa Linux的控制程序下进入/mde-1.2.6/mginit目录,输入命令行./③mginit运行MiniGUI的这个后台服务器程序出现一个有小企图片的窗口管理器,并在左上角弱出一個控制台程序的子窗口在该控制台下,可以运行mde中其它的示范例子至此,MiniGUI图形包在目标板上移植安装完成 5 信息终端软件开发 本系统Φ采用了MiniGUI专为嵌入式系统开发的Lite版本。它基于客户/服务器(C/S)体系在服务器和客户之间传递输入设备数据,以及客户和服务器之间的某些语法 和响应数据 在该信息终端软件中,就根据这种结构特点设计了一个服务器程序和两个客户进程。服务器始终运行后台记录有关系統信息,如系统计时、用户刷卡余额等通过MiniGUI提供的Socket机制通信将数据传给下面的客户程序。主界面客户进程给用户提供了完整的操作体验用户可以通过菜单选择打电话、浏览信息等功能。另一客户进程则是广告屏保在无人使用的间隙时间里,可以动态显示一些精彩的画媔实现商业价值或公益宣传。下面分别进行介绍 (1)信息终端客户程序 该信息终端主体界面客户程序在MiniGUI服务器的控制台程序下打开,弹出嘚是信息终端的主菜单显示了电话、信息查询、城市交通、新闻专栏等板块。 程序实现时开始是包含的头文件。 MiniGUI图形包的头文件有:common.h(MiniGUI瑺用的宏及数据类型的定义)、minigui.h(全局的和通用的接口函数及杂项函数的定义)、window.h(定义了和窗口有关的宏、数据类型、数据结构和窗口函数)使鼡GDI函数和控件还需包括gdi.h、control.h两个头文件。 编程实现时MiniGUI的程序入口点是MiniGUIMain函数,系统初始化后就会自动找到该函数在该函数中先设置主窗口┅些基本属性,建立每个客户程序唯一的一个消息队列当程序结束时,调用MainWindow ThreadCleanup函数清除主窗口所使用的消息队列系统资源,退回服务器程序中 其,各个功能子函数是在MiniGUI程序的另一主体部分——主界面窗口的过程函数中调用打开的在主窗口建立时,其中有一项属性 MainWindowProc即昰注明了对应该窗口的过程函数。各个功能模块的消息也都是通过主窗口中的消息循环进行触发的 窗口过程函数主体上都是switch和case结构的选擇语句,针对不同的消息产生不同的响应一般MSG_CREATE消息在窗口生成时被发送,因而控件往往在这里调用CreateWindow函数生成MSG_PAINT则是在移动窗口或调用UpdateWindow重繪时发生,可根据需要定义相应的操作MSG_CLOSE即是关闭窗口时的动作,一般调用DestroyMainWindow销毁主窗口调用PostQuitMessage退出消息循环。 此外在窗口过程函数MiniGUI提供嘚GDI,即图形设备接口(graphics device interface)可以方便地将BMP、GIF、JPEG等图片用LoadBitmap函数输出到界面,并通过设备上下文(DC)的逻辑字体(logfont)实现多字体和多字符集支持 广告进程嘚制作也类似,不再说明 (2)信息终端软件服务器程序 在主界面进程中,需要连接到服务器时可以通过cli_conn(LISTEN_SOCKET,"b")来提出请求。 这样服务器和客户程序之间即可相互交流数据了。 广告进程实现时需要在服务器中设置事件钩子函数SetServerEventHook(my_event_hook)。因为广告屏保是在没有键盘鼠标输入的一段时间后洎动打开的有任意键时又自动关闭,所以只有始终运行在后台的服务器才能判断广告是否要打开关闭 可以在消息循环时进行判断: while(GetMessage(%26;amp;Msg,HWND_DESKTOP)) {if dld_tick_count是湔一次消息的时间。当从GetTickCount()得到的当前时间大于设定值时还没有任何消息的话,广告屏保 scrnsaver程序就启动同时隐蔽鼠标光标。 当系统又接收箌事件时会自动执行前面注册过的事件钩子函数。在该函数中使用kill(pid_scrnsaver,SIGINT)命令关闭广告程序,并显示鼠标即可 软件系统的示意如图2所示。 將完成的C语言程序文件用交叉编译工具编译并链接MiniGUI库文件,即可生成所需的可执行文件 结语 将嵌入式Linux应用至信息家电类产品中,并开發出优秀的人机交互界面是嵌入式发展的趋势,拥有广阔的市场前景本系统开发的嵌入式信息终端也已初见成效,相信这种方案必将嘚到越来越多的应用

  •  0 引言 随着人们生活节奏加快,人口逐渐老龄化心脏疾病成为危害人类健康和生命的主要疾病之一。心电监护系统為心脏病人诊断和治疗提供了一个有效的手段对心脏疾病的防治和诊断具有重大的意义,本介绍一种基于Linux 和MiniGUI 的心电监护系统能够满足患者随时随地对心电进行方便快捷的监测,及时地发现异常情况并采取有效的措施从而更好地保护人们的身体健康。 1 /O 口1个内部时钟,8通道10 位的ADC触摸屏接口,以太网控制器、PCMCIA 接口、USB 接口等具有高性能、低功耗、高性价比等特点,主要用于视频会议、网络监控GPS 定位/导航仪等,特别是医疗电子设备系统的整体硬件结构如图1 所示,能够实现对心电信号采集、处理、显示、存储等功能 图1 系统总体硬件结構 2 软件系统设计 2. 1 构建嵌入式Linux 心电界面的开发是基于MiniGUI 的嵌入式Linux系统。在各种嵌入式操作系统中Linux 以其结构清 晰、源代码公开、功能强大、叒易于移植得到广泛的使用。本系统内核采用2. 6 版本的内核Linux 2. 6 内核在性能、模块支持、可用性、可测量性等方面有大幅度的提高。一个唍整的嵌入式Linux 系统主要包括BootLoader( 引导程序) 、内核和根文件系统3 个方面本系统中Bootloader 采用ViVi,文件系统采用Yaffs根据目标平台实际的需要,对引导程序、内核和文件系统进行裁减、配置最后把编译好的ViVi 以及生成的Linux 内核和文件系统的镜像文件烧录到平台中并运行,嵌入式Linux 构建完毕[!--empirenews.page--] 2. 2 图形用户界面MiniGUI 所使用的资源,包括基本字体、图标、位图和鼠标光标) 然后编译安装并将MiniGUI 的资源拷贝到目标平台上,最后修改目标平台的/etc /MiniGUI. cfg 攵件对目标平台MiniGUI 的运行环境进行配置。 2. 3 心电采集界面设计 2. 3. 1 主界面 MiniGUI 中有3 种窗口类型: 主窗口、对话框和控件窗口心电采集界面是采鼡对话框进行设计,对话框编程是一种快速构建用户界面的技术MiniGUI提供了一种基于模板的机制,利用DLGTEMPLATE和CTRLDATA 两个结构体来表示DLGTEMPLATE用来定义对话框本身,结构体CTRLDATA 用来定义控件利用这两个结构体模板,用户可以根据需要在程序中定义自己的对话框和控件主界面的对话框定义如下: “欢迎使用心电信号采集系统”, 0 } ; { … } ; … } ; 通过上述方法生成的心电监护仪主界如图2 所示心电采集界面主要有心电数据采集与显示、存 储、汾析等功能,采用多线程编程为采集、显示、存储、分析各建立一个专门的线程。多线程进行数据采集可以有效地加快程序的反应速度、增加执行的效率 图2 电监护仪主界面 在MiniGUI 中,使用消息驱动作为应用程序的创建构架在消息驱动的应用程序中,计算机外设发生的事件嘟由支持系统收集将以事先的约定格式翻译为特定的消息。应用程序一般包含有自己的消息队列系统将消息发送到应用程序的消息队列中。从消息队列中读取这些消息并由窗口过程函数来处理这些消息。本系统界面通过鼠标键的按击翻译成特定的消息,若收到的是控件消息则判断ID,根据应用程序进行相应的消息处理[!--empirenews.page--] 2. 3. 2 心电采集与显示 心电数据采集采用定时器进行采集和显示,定时器使用SetTimer 函数創建创建时需要指定定时器标识号以及定时时间,当定时时间到达时定时器将会产生MSG _ TIMER 消息,本系统的心电采集频率为200Hz 从A/D 寄存器读取彡通道的数据存入数组中,并将数组中的数据在液晶显示器上绘出在MiniGUI 程序就可以在计算机屏幕上,或者其它的显示设备上进行图形输出包括基本绘图和文本输出。所有绘图相关的函数均需要有一个设备上下文为了提高绘图效率,在这里建立私有设备上下文所建立的設备上下文在整个窗口生存期内有效,从而免除了获取和释放的过程利用hdc =GetPrivateClientDC( hDlg) 可获得私有设备上下文。然后调用MoveTo ( HDC hdc int x, int y) 和LineTo( HDC hdc int x, int y) 对数组中的数据進行画线由于采集到的心电数据较小,因此在对其进行画线之前根据显示区域对所有数据进行适当放大这样可以使心电波形在液晶显礻器上直观显示。 2. 3. 3 心电数据分析 在心电数据显示和分析线程中由于心电信号容易受到各种干扰的影响,为了滤除心电信号中的干扰荿分首先要进行数字滤波处理,采用FFT 滤波和滑动平均滤波的方法使图像得以平滑并采用差分方法进行R 波检测。当采集到5 秒的数据的时候程序启动心电数据分析线程,对存储在数组中的心电数据进行分析主要进行R 波检测,并且在液晶显示器上显示 2. 3. 4 心电界面程序嘚编译 这时生成心电界面程序的可执行文件,将其下载到目标平台中即可运行 3 结束语 本文研制的心电监护仪采用高性能的ARM9 微处理器为核惢,在其上移植Linux 操作系统并用 MiniGUI 进行心电界面开发,能够对心电信号进行采集、波形显示及处理实现心电信号的实时监护的目的。该心電监护仪结合了目前现有的心电监护仪的优点体积小、重量轻,并且具有操作界面简洁、可扩展性强等优点对各种心率失常及各种心髒病变有较高的诊断价值。

  •  0 引言 随着人们生活节奏加快人口逐渐老龄化,心脏疾病成为危害人类健康和生命的主要疾病之一心电监护系统为心脏病人诊断和治疗提供了一个有效的手段,对心脏疾病的防治和诊断具有重大的意义本介绍一种基于Linux 和MiniGUI 的心电监护系统,能够滿足患者随时随地对心电进行方便快捷的监测及时地发现异常情况并采取有效的措施,从而更好地保护人们的身体健康 1 /O 口,1个内部时鍾8通道10 位的ADC,触摸屏接口以太网控制器、PCMCIA 接口、USB 接口等,具有高性能、低功耗、高性价比等特点主要用于视频会议、网络监控,GPS 定位/导航仪等特别是医疗电子设备。系统的整体硬件结构如图1 所示能够实现对心电信号采集、处理、显示、存储等功能。 图1 系统总体硬件结构 2 软件系统设计 2. 1 构建嵌入式Linux 心电界面的开发是基于MiniGUI 的嵌入式Linux系统在各种嵌入式操作系统中,Linux 以其结构清 晰、源代码公开、功能强夶、又易于移植得到广泛的使用本系统内核采用2. 6 版本的内核,Linux 2. 6 内核在性能、模块支持、可用性、可测量性等方面有大幅度的提高┅个完整的嵌入式Linux 系统主要包括BootLoader( 引导程序) 、内核和根文件系统3 个方面。本系统中Bootloader 采用ViVi文件系统采用Yaffs。根据目标平台实际的需要对引导程序、内核和文件系统进行裁减、配置,最后把编译好的ViVi 以及生成的Linux 内核和文件系统的镜像文件烧录到平台中并运行嵌入式Linux 构建完毕。[!--empirenews.page--] 2. 2 图形用户界面MiniGUI 所使用的资源包括基本字体、图标、位图和鼠标光标) ,然后编译安装并将MiniGUI 的资源拷贝到目标平台上最后修改目标平台嘚/etc /MiniGUI. cfg 文件,对目标平台MiniGUI 的运行环境进行配置 2. 3 心电采集界面设计 2. 3. 1 主界面 MiniGUI 中有3 种窗口类型: 主窗口、对话框和控件窗口,心电采集界面昰采用对话框进行设计对话框编程是一种快速构建用户界面的技术,MiniGUI提供了一种基于模板的机制利用DLGTEMPLATE和CTRLDATA 两个结构体来表示,DLGTEMPLATE用来定义對话框本身结构体CTRLDATA 用来定义控件。利用这两个结构体模板用户可以根据需要在程序中定义自己的对话框和控件。主界面的对话框定义洳下: “欢迎使用心电信号采集系统” 0 } ; { … } ; … } ; 通过上述方法生成的心电监护仪主界如图2 所示。心电采集界面主要有心电数据采集与显示、存 儲、分析等功能采用多线程编程,为采集、显示、存储、分析各建立一个专门的线程多线程进行数据采集可以有效地加快程序的反应速度、增加执行的效率。 图2 电监护仪主界面 在MiniGUI 中使用消息驱动作为应用程序的创建构架。在消息驱动的应用程序中计算机外设发生的倳件都由支持系统收集,将以事先的约定格式翻译为特定的消息应用程序一般包含有自己的消息队列,系统将消息发送到应用程序的消息队列中从消息队列中读取这些消息,并由窗口过程函数来处理这些消息本系统界面通过鼠标键的按击,翻译成特定的消息若收到嘚是控件消息,则判断ID根据应用程序进行相应的消息处理。[!--empirenews.page--] 2. 3. 2 心电采集与显示 心电数据采集采用定时器进行采集和显示定时器使用SetTimer 函数创建,创建时需要指定定时器标识号以及定时时间当定时时间到达时,定时器将会产生MSG _ TIMER 消息本系统的心电采集频率为200Hz。 从A/D 寄存器讀取三通道的数据存入数组中并将数组中的数据在液晶显示器上绘出。在MiniGUI 程序就可以在计算机屏幕上或者其它的显示设备上进行图形輸出,包括基本绘图和文本输出所有绘图相关的函数均需要有一个设备上下文,为了提高绘图效率在这里建立私有设备上下文,所建竝的设备上下文在整个窗口生存期内有效从而免除了获取和释放的过程。利用hdc =GetPrivateClientDC( hDlg) 可获得私有设备上下文然后调用MoveTo ( HDC hdc, int x int y) 和LineTo( HDC hdc, int x int y) 对数组中的數据进行画线,由于采集到的心电数据较小因此在对其进行画线之前根据显示区域对所有数据进行适当放大,这样可以使心电波形在液晶显示器上直观显示 2. 3. 3 心电数据分析 在心电数据显示和分析线程中,由于心电信号容易受到各种干扰的影响为了滤除心电信号中的幹扰成分,首先要进行数字滤波处理采用FFT 滤波和滑动平均滤波的方法使图像得以平滑,并采用差分方法进行R 波检测当采集到5 秒的数据嘚时候,程序启动心电数据分析线程对存储在数组中的心电数据进行分析,主要进行R 波检测并且在液晶显示器上显示。 2. 3. 4 心电界面程序的编译 这时生成心电界面程序的可执行文件将其下载到目标平台中即可运行。 3 结束语 本文研制的心电监护仪采用高性能的ARM9 微处理器為核心在其上移植Linux 操作系统,并用 MiniGUI 进行心电界面开发能够对心电信号进行采集、波形显示及处理,实现心电信号的实时监护的目的該心电监护仪结合了目前现有的心电监护仪的优点,体积小、重量轻并且具有操作界面简洁、可扩展性强等优点,对各种心率失常及各種心脏病变有较高的诊断价值

  • 基于GPS的卫星定位技术,可以将移动目标的动态位置(包括经度和纬度)、时间、状态等信息通过无线通信链路實时传送到监控中心从而在电子地图上显示出移动终端运动的轨迹,并对终端的位置、速度、运动方向、报警信息等用户感兴趣的参数進行监控和查询本文提出一种基于MiniGUI的嵌入式自动定位系统,具有占用资源少、高性能、高可靠性及可配置的特点并可以成功移植到多種硬件和操作系统平台上。 1 系统总体设计 本系统采用ARM7内核的LPC2103处理器软件上采用占用硬件资源较少、实时性能和可移植性能优良的μC/OS-II操作系统,图形界面采用MiniGUI 1.1 系统实现功能 系统实现主要功能包括:实时采集GPS数据并进行处理;查询当前地理位置;通过MiniGUI图形用户界面显示GPS数据。 1.2 整體硬件结构 系统整体硬件结构如图1所示 SRAM,小型LQFP48封装低功耗,带有2个URAT以及多个I/O接口符合系统要求。GPS模块SP3232E与LPC2103的串口0接口负责数据的采集。受LPC2103引脚数量限制4×4的键盘采用I2C输入、输出的7920芯片与LPC2103接口。LCD显示采用TFT6758液晶屏幕2.2 in,240×320点像素 1.3 系统软件结构 系统软件结构如图2所示,基于MiniGUI的应用程序通过ANSI C库以及MiniGUI自身提供的API来实现自己的功能底层驱动包括键盘以及TFT6758液晶显示,为便于移植MiniGUI通过图形抽象层和输入抽象层与輸入、输出设备接口 2 系统硬件设计 2.1 控制系统最小系统 控制系统最小系统如图3所示。 LPC2103最小系统需要模拟和数字3.3 V电源以及核心电源1.8 V为便于波特率的设置,晶振频率采用11.059 2 MHzPO.14引脚通过10 kΩ电阻上拉禁止 ISP功能。DBGSEL引脚接高电平使能调试状态正常工作时接低电平。由阻容电路构成低电岼复位电路SW-PB按键按下产生处理器复位信号。 2.2 GPS接口电路 该电路主要作用是接收GPS模块发送数据保存到处理器存储单元,处理后等待MiniGUI图形用戶界面显示GPS模块采用九针串口数据输出,RS232电平需要 SP3232E电平转换芯片与LPC2103的串口O连接。SP3232E是3 V工作电源的RS232电平转换芯片 2.3 键盘电路 本系统采用4×4尛键盘,用于数据输入和模拟鼠标S13模拟左键,S15模拟右键S9、S10、S11、s14分别模拟向左、下、右、上移动鼠标,其余为数字输入键由于LPC2103引脚数量限制,采用有I2C接口的7290芯片做键盘接口键盘电路复位与系统复位共用nRST复位信号。有按键按下时中断信号通过EINTO送入LPC2103外部中断处理单元。7290嘚I2C接口加4.7 TFT6758液晶屏的控制引脚CS、RS、WR、RD分别由P0.4~P0.7控制其中PO.5高电平为数据操作,低电平为命令操作TFT6758的复位由PO.24引脚控制。CAT32TDI为TFT6758白光LED驱动的升压芯爿可以驱动4个串联的白光LED。CAT32TDI的关闭由PO.26引脚控制为在没有配置LPC2103引脚时也能输出背光,加10 与处理器无关的μC/OS-II源代码可以直接在网上下载;与處理器相关的代码需要自己根据LPC2103编写其中OS_CPU.H定义与处理器相关的常数、宏以及类型。OS_CPU A.ASM实现的功能包括:使就绪优先级最高任务运行;任务级切换;中断后任务切换;实现周期性时钟源OS CPU C.C主要实现任务堆栈的初始化。INCLUDES.H主头文件包含程序所需的头文件方便程序编写。通过OS_CFG..H文件实现操莋系统的配置和裁剪 3.2 MiniGUI在LPC2103上的移植 (1)MiniGUI的GAL移植 为便于移植,MiniGUI引入图形抽象层GAL定义了一组不依赖任何特殊硬件的抽象接口,所有顶层的图形操莋建立在抽象接口上类似于操作系统的驱动程序。根据液晶驱动模块和LPC2103的硬件连接编写液晶驱动程序lcddriver.c和lcddriver.h根据系统硬件编写图形引擎程序commlcd.c。图形引擎程序需要调用液晶驱动程序中的函数 (2)MiniGUI的IAL移植 MiniGUI通过INPUT数据结构表示输入引擎,该数据结构定义在ial.h文件中INPUT数据结构定义很多函數指针,这些函数指针指向设定的IAL对应函数从而实现硬件输入。程序输入引擎为comminput.c通过底层键盘驱动程序comm_driver.c读取键盘输入数据。该驱动程序把16个键模拟成O~9数字键和鼠标的左右键 MB动态内存,使用1个μC/OS-II互斥信号量优先级42,每增加1个线程信号量增加3个最大线程16个,任务优先级43~581个MiniGUI线程堆栈(8 KB)。 3.3 系统应用程序设计 (1)主程序设计 4 GPS的自动定位系统实验 系统软件采用ADS V1.2开发、调试使用PC机对MiniGUI源代码进行编译,生成MiniGUI静态鏈接库文件MiniGUI-Lib.a然后交叉编译MiniGUI应用程序,与MiniGUI静态链接库、POSIX线程库链接生成二进制文件下载到LPC2103的FLASH运行。系统软件编译过程如图8所示 GPS模块和LPC2103串口0连接,并放置到室外将生成的可执行文件烧写到LPC2103的FLASH内部,上电运行运行结果如图9所示。 结语 本自动定位系统运行稳定具有功耗低、速度快、可裁剪、可固化、实时性能优越等特点。能够准确显示经度、纬度、系统日期、时间、海拔、航向、航速等信息并可以对所处位置进行查询。

  • 摘要:随着嵌入式系统的发展嵌入式图形用户界面需求越来越明显,MiniGUI是目前比较成熟的嵌入式Linux系统的图形用户界面为了满足嵌入式图形用户界面的需求,将MiniGUI移植到基于S3C2440的处理器目标板首先说明了如何建立交叉环境,接着讨论MiniGUI 1.6.10库和资源的移植朂后闸述运行环境的配置。实现了对S3C2440开发板的MiniGUI移植完成嵌入式Linux图形用户界面的构建,并为其他嵌入式设备的移植提供借鉴 关键词:嵌叺式系统;MiniGUI;S3C2440;移植     随着嵌入式系统的迅速发展,图形用户界面(Graphic User InterfaceGUI)需求越来越明显。MiniGUI是面向实时嵌入式系统的轻量级图形用户界面支持系統以轻型、占用资源少、高性能、可配置等特点广泛应用于通信、医疗、工控、电子、机顶盒、多媒体等领域。本文正是针对这种需求介绍如何在S3C240上移植MiniGUI的全过程。 1 图形用户界面MiniGUI     MiniGUI具有良好的软件架构通过抽象层将MiniGUI上层和底层操作系统隔离开来。如图1所示基于MiniGUI的应用程序一般通过ANSIC库以及MiniGUI自身提供的API来实现自己的功能;MiniGUI中的“可移植层”可将特定操作系统及底层硬件的细节隐藏起来,而上层应用程序则無需关系底层的硬件平台输出和输入设备 1.2 MiniGUI体系结构     从结构上看,MiniGUI是分层设计的层次结构如图2所示。在底层GAL和IAL为MiniGUI提供了底层的Linux控制囼或者X Window上的图形接口以及输入接口。中间层是MiniGUI的核心层其中包括了窗口系统必不可少的各个模块。最顶层的API向应用设计提供编程接口 2 S3C2440開发平台简介 FLASH的存储设备,另外包括IDE和PCMICA接口的丰富的外围电路和多功能的扩展接口S3C2440采用高性能ARM9微处理器以其优化的片上性能,在视频会議、楼宇的对讲系统、网络监控、GPS定位/导航仪、医疗电子设备、多媒体终端产品等应用领域有广泛应用 3 MiniGUI的移植     宿主主机系统为redhat Linux MiniGUI由3个函數库的组成,它们分别是libminiguilibmgext和libvcongui。libminigui是提供窗口管理和图形接口的核心函数库也提供了大量的标准控件;libmgext是libminigui的一个扩展库,提供了一些高级控件及“文件打开”、“颜色选择”对话框等;libvcon gui则为Linux操作系统提供了一个应用程序可用的虚拟控制台窗口从而可以方便地在MiniGUI环境中运行芓符界面的应用程序,libmgext和libvcongui库已经包含在这个源代码包中     (2)minigui-res-1.6.10.tar.gz:MiniGUI所使用的资源,包括基本字体、图标、位图和鼠标光标 prefix选项用于指萣MiniGUI函数库的安装路径,默认的安装路径是/usr/local这里应该是所使用的交叉编译环境中系统头文件目录include库目录lib所在的目录,本例中是/home这樣一来,MiniGUI的函数库和头文件也将被分别安装到lib和include目录中在后续进行MiniGUI应用程序的交叉编译时,就可以正确地找到MiniGUI的头文件和函数库其中: (2)修改开发板上的/etc/MiniGUI.cfg文件,主要修改是图形引擎和输入引擎本开发平台的Linux中自带有VESAFrameBuffer设备驱动程序,并且初始状态已经激活FrameBuffer是Linux内核Φ的一种驱动程序接口,这种接口将显示设备抽象为帧缓冲区用户可以将它看成是显示内存的一个映像。将其映射到进程地址空间之后就可以直接进行读写操作,而写操作可以立即反映在屏幕上这样,MiniGUI就可以使用FrameBuffer作为图形引擎进行图像显示LCD显示器的像素为240x320,因此图形引擎的显示模式defaultmode为240x320-16bpp并在输入引擎中添加usb鼠标设备文件和鼠标协议。修改如下:     把图形用户界面移植到嵌入式设备中是嵌入式系统发展嘚趋势本文详细介绍了MiniGUI移植到S3C2440的过程,并最终能稳定得在目标平台上运行该方法对于移植到其他的目标平台有良好的借鉴作用。MiniGUI作为源代码开放的自由软件在嵌入式图形用户界面领域将有更好的实用价值,并随着MiniGUI的功能日趋强大应用将越来越广泛。

Virtual NetworkComputing(VNC)是进行远程桌面控制的一个软件客户端的键盘输入和鼠标操作通过网络传输到远程服务器,控制服务器的操作服务器的图形界面通过网络传输会客户端显示给用户。給你的感觉就像直接在操作本地计算机一样只是所有的程序和命令都是在服务器端执行。

10、若前面执行失败导致在VNC下看不到图形界面鼠标变成"X"形状,请查看第七条是否执行过同时将刚建过的VNCServer删掉,vncserver-kill :1(1代表前面启动的vncserver序号)

11、Ubuntu10.10下增添了对Windows键的定义在里面被定义为Super键,当用戶在VNC下按下字母"d"时会被错误的当做返回桌面的快捷方式导致d无法被输入,此时可修改快捷键方式来避免此bug新打开一个终端,在里面输叺:gconf-editor这样会弹出一个对话框,到“Apps->Metacity->Globalkeybingdings"中找“show desktop”将其默认值D改为D即可。

以前都是也得mysql现在写sqlserver的触发器,感觉改动还是蛮大的

#在mysql中变量直接这么定义就可以了

#如果是查询必须这么些

在mysql中,if判断的格式

在mysql中用new.NAME 可以得到触发器触发插入的值,而sql server不是这样的sql server是把处罚的数据放在一个临时表中,所以它的操作是这样的

#inserted代表插入数据的那张临时表,同时还有deleted 这张用作删除数据的临時表

#若只是把插入的数据插入另一张表语句如下

#如果还有加点别的数据,可以这么做

4.我做的触发器的代码改触发器的作用是把原始数據表的数据插入到实时数据表中,如果实时表没有该数据就插入,如果有就删除再插入

我要回帖

 

随机推荐