基于WinCE的智能终端自动升级引擎设计

发布者:星光曲折最新更新时间:2012-03-21 来源: 微计算机信息 关键字:WinCE  智能终端  自动升级  智能推送 手机看文章 扫描二维码
随时随地手机看文章

1.引言

软件的维护模式经历了几个阶段,都各有其发展的客观原因,也各有优缺点。

本文在对现有的软件维护模式理论的分析比较后,结合机场智能终端系统的具体项目,应用嵌入式技术、数据库技术和智能推送等技术设计和实现了基于WinCE的智能终端自动升级引擎,对该升级引擎的设计进行了详细说明。

2.软件维护

2.1 软件维护的目的

软件维护是指修正已经运行的软件系统所需要做的工作。运行程序的环境在不断变化,程序的故障也在不断发现,软件需要改正,改进,需要优化;不仅当前的版本要改变,而且仍在使用的旧版本也要维护。即将投入使用的新的版本,可能也需要修改。解决原有的问题需要花费精力,改变后的版本又可能带来新的问题;依靠个人来维护软件在大型系统中显得很不实际。由此软件科学有效地维护成为了软件工程的主要目标之一,意义重大。

2.2 软件维护模式比较

(1)Mainframe/Terminal阶段:在计算机发展的早期,计算资源非常有限,对软件的维护只需对主机进行,维护相对简单。但用户必须登录到主机才能使用计算资源。

(2)Client/Server阶段:Server接收来自Client的请求。完成像数据库这样的处理,将结果返回给Client。这种模式中,Client端软件可能出于不同的软件和硬件平台,导致运行环境和软件版本的不一致,如果让用户自已及时下载最新的 client软件,这会给用户带来不便。

(3)CORBA模式:进一步在软件的可维护性,可扩展性上作了扩展。CORBA定义了一个带有开放软件总线的分布式结构,在这一结构中,运行在不同操作系统上的对象,能够进行互操作。但CORBA模式庞大而复杂,并且技术标准更新相对较慢,影响了系统开发的效率。

可以看出传统的三种维护模式各有忧缺点,在机场智能终端系统具体的应用中,我们充分利用了三种维护模式的优点,并采用当下流行的技术尝试了一种新的软件维护模型:即结合嵌入式技术、数据库技术和智能推送等技术采用基于WinCE的智能终端自动升级模式,充分考虑软件的自动维护和升级,又照顾到实际应用中的带宽限制。客户端启动时能够完成自动升级,并且在运行中运用智能推送技术,当获取到新的版本信息,经分析处理、认定后主动实时地发送给定制版本信息的智能终端用户,实现了信息找用户,保障了软件版本的即时快速的更新。

3.智能终端自动升级

3.1 智能终端自动升级的模型

智能终端自动升级的模型如图1所示。

图1 智能终端自动升级的模型[page]

3.2 智能终端自动升级的流程

(1)在运行智能终端主程序时就启动升级模块,从服务器下载最新的版本号,如果对比当前版本号过时,则提示是否升级。

(2)在获取网络连接正常且带宽允许的情况下,确认升级。

(3)服务器接收到升级请求后,向数据库获取新旧版本的版本信息和文件信息列表,通过任意版本间版本信息的比较算法获取需要更新、删除、添加的文件列表。

(4)智能终端通过获取到的需要更新、删除、添加的文件列表下载相关的升级模块来进行软件的自动升级。

(5)显示下载进度。

(6)下载完毕后,对要注册的文件进行注册。

(7)升级完成,关闭升级模块,运行主程序。

(8)在主程序运行过程中检测、获取服务器智能推送过来的版本信息。

(9)如发现智能推送过来版本升级信息,回到第4步。

(10)关闭主程序。

4.版本信息数据库和算法的设计

4.1 版本信息数据库的设计

(1)tab_ver_all(历史版本控制表)

该表数据项说明如表一所示:

表一 历史版本控制表

列名

数据类型

长度

是否为空

意义

ID

integer

2

N

标志一条记录

Ver_number

verchar

6

N

智能终端软件版本号

Ver_date

date

20

N

软件发布日期

Ver_remark

verchar

100

Y

备注

 

 

 

(2)tab_ver_info(版本信息控制表)

该表数据项说明如表二所示:

表二 版本信息控制表

列名

数据类型

长度

是否为空

意义

ID

integer

2

N

标志一条记录

FileName

verchar

20

N

文件名

BelongVer

verchar

10

N

所属版本,与tab_ver_info建立外键关系

FileVer

verchar

10

N

文件版本

FileSize

verchar

20

N

文件大小

ServerList

verchar

60

N

服务器安装目录

ClientList

verchar

60

N

智能终端安装目录

FileDate

date

20

N

文件发布日期

fileRemark

verchar

100

Y

备注

 

 

 

 

 

 

4.2 任意版本间版本信息比较的算法设计

4.2.1 算法设计的目的

本算法接收新旧版本号,运算后按照接口字符串协议提供给上层应用需要更新、删除、添加的文件列表字符串。

4.2.2 算法设计的思路和流程

(1)根据输入的新旧版本号查询版本信息控制表,获取到新旧版本的文件名列表。

(2)把新旧版本的文件名列表放入new()和old()两个数组中,进行第一次循环比较:相同的文件放入same()数组中,多余的文件放入del()数组中,没有的文件放入add()数组中。由此已经确定了需要删除、添加的文件名列表。

(3)再根据输入的新旧版本号和same()数组中的相同文件名查询版本信息控制表中相同文件名的文件版本号,进行第二次循环比较:文件版本号相同的文件保留,不同的则放入update()数组中,由此最终确定了需要更新的文件名列表。

(4)通过得到的三类文件名列表查询版本信息控制表获取完整包括文件名、文件大小、服务器安装目录、智能终端安装目录等文件信息。

(5)按照接口字符串协议打包生成需要更新、删除、添加的文件列表字符串提供给上层应用解包后完成软件需要更新、删除、添加文件的分发下载。[page]

算法流程图如图二:

图二 算法流程图

4.2.3 接口字符串协议

(1)"#"隔开的三段按顺序是:#更新文件信息#添加文件信息#删除文件信息#。

(2)"*"隔开的更新/添加文件信息:*文件名*文件大小*服务器安装目录*智能终端安装目录*。

(3)"*"隔开的删除文件信息:*文件名*文件大小*智能终端安装目录*。

例如:#*ssdit.exe*101KB*c:\windows\ssdit* \ssdit*#*conx.dll*1.2MB*c:\windows\syste   m32*\windows\system32*#*config.ini*6KB*c:\windows*\windows*#

该算法为系统上层应用提供了调用接口,极大地提高了软件维护的效率,在系统实际运行中稳定可靠。

结束语

在机场智能终端系统的开发和维护过程中,基于WinCE的智能终端自动升级引擎得到了非常成功的应用。现在已在各大机场智能终端系统中得到成功推广,使用户软件升级更加方便快捷,也大大减少了维护人员的工作量。对于软件开发者和维护人员来说,在无线网络的环境下开发类似具有自动升级引擎功能的软件具有很强的实际借鉴意义。

参考文献:

[1] 凌小鹏,用VB创建支持断点续传的Internet传输控件[J],计算机应用研究,2000。

[2] 梅怡红,如何使客户端的应用程序自动升级[J],微电子技术,2003.2。

[3] 王志霞,文件传输协议FTP命令详解[J],黑龙江气象,2002.2。

[4] 高健,来五星,史铁林,嵌入式系统中网络通信模块的实现,微计算机信息,2006,8-2:77-79。

[5] David Hill,Brenton Webster,Edward A.Jezierski,etc.,Smart Client Architecture and Design Guide,Microsoft Corporation,June 2004.

关键字:WinCE  智能终端  自动升级  智能推送 引用地址:基于WinCE的智能终端自动升级引擎设计

上一篇:基于Qt/E的嵌入式GUI的研究及其移植
下一篇:基于WinCE的嵌入式系统注册表的研究

推荐阅读最新更新时间:2024-05-02 21:58

基于ARM+WinCE项目开发过程中动态加载GPIO端口驱动程序的设计方法
  本文针对采用基于流接口驱动方式进行GPIO端口驱动开发所存在的困难和不足,提出了采用动态方式加载(卸载)端口驱动的思路,给出了该思路下GPIO端口驱动设计方法的步骤和关键代码并进行了验证,为其他类似的驱动设计与实现提供参考。   WinCE下GPIO端口驱动大多采用流接口驱动的方式进行开发,在实现上主要依托Platform Builder编译环境将驱动程序编译成动态链接库,并整合到WinCE内核中。但在实际项目的开发中,Platform Builder在驱动程序的开发和涮试上不够便捷,且在整合动态链接库和WinCE内核时,需要进行繁琐的参数配置,整个过程较为复杂。笔者以飞凌S3C2440开发板为例,给出在VisualStudi
[单片机]
基于ARM+<font color='red'>WinCE</font>项目开发过程中动态加载GPIO端口驱动程序的设计方法
多屏世界与自动驾驶背后的IC升级
车内屏的“内卷”,已经从越大,越宽,变成越多。从中控屏到副驾屏,现在重新回归的后排屏。 然而,屏的应用并不仅仅是让人在车上听音乐、看视频、玩游戏。如果从驾驶者角度来看,它还有驾驶安全层面上的作用,比如现在已经成为很多驾驶者依赖的360度环视,对于停车来说真的方便很多,还有流媒体后视镜,以及电子外后视镜等等,相应的就是越来越多的车载摄像头的应用。 对于消费者来说,只要使用时不出问题,比如没有画面,或者卡顿等等就行。但是对于背后的电子元件供应商来说,就不仅仅是保证不出问题就可以了。他们要从成本、能耗、重量、集成化等多方面因素进行考虑,还要满足当下汽车智能化发展的需求和面向自动驾驶发展的需求,这也推进着电子元件供应商在技术与产品
[汽车电子]
多屏世界与<font color='red'>自动</font>驾驶背后的IC<font color='red'>升级</font>
AMTS 2017锦明科技——助力动力电池装配自动升级
随着新能源动力汽车的火热,锂电池产业开始上行。面对持续增长的锂电池市场需求,提高生产效率已经成为当务之急。毫无疑问,用自动化解决方案替代手工操作的生产流程将轻松解决效率问题,同时还有可能为企业节约成本。   锦明科技作为中国领先的工业机器人研发和系统集成制造的高新技术企业,专业打造先进的锂电池装配线,为客户量身定制装配自动化解决方案。   在今年9月5-8日在上海举办的第十三届上海国际汽车制造技术与装备及材料展览会(以下简称:AMTS 2017)上,锦明科技(AMTS 2017展位号:E7-E20)将带来锂电池自动化装配解决方案。   锂电池自动化装配线 锦明科技锂电池自动化装配线,包括机器人自动分选、焊接、装配、包装整体
[电源管理]
IDC:明年中国智能终端市场上看3.9亿台
        IDC估中国2013 年智慧终端市场(PC 、智慧型手机和平板电脑) 出货量将接近3.9 亿台/ 支,其中,智慧型手机的出货量就估可达3 亿支,比今(2012 ) 年大幅成长44% 。另PC 市场则因为受到新兴智慧终端冲击,成长相对放缓,年增率估仅3.8% 。另平板电脑市场在Windows RT 以及价格竞争等刺激因素影响下,估明(2013) 年出货量将有25.1% 的增长。而IDC 估至2016 年,中国智慧终端市场出货量将达5.6 亿台/支。 IDC 认为在智慧终端大融合的时代下,传统键盘输入模式将被打破,估2013 年智慧终端产品的触控比例将接近80% ,同时也预期未来语音和体感输入也将融入到更多终
[手机便携]
自动驾驶技术不断发展 是一步到位还是迭代升级
随着能源革命和新材料、新一代信息技术的不断突破,世界汽车产业格局和生态体系正发生着深刻的变化。我国汽车产业往“新四化”的发展目标在汽车产业领域不断挖掘,培育新的增长点,新能源与智能网联汽车正在形成协同发展的局面。 自动驾驶 技术的不断发展, 自动驾驶 汽车不断照进现实,从20世纪末尾开始便有十多年历史的 自动驾驶 汽车,在21世纪初呈现出接近实用化的趋势。发展至今,自动驾驶汽车按照自动化程度分出等级,从第一阶段的驾驶辅助系统(已普遍使用),到第二阶段的部分自动化系统,第三阶段高度自动化,及第四阶段完全自动化,各大车企和科技巨头的入局,渐渐出现了到底应该一步到位还是迭代升级的争议……    李开复:自动驾驶必须一步到位
[汽车电子]
未来五年3G引领 个人智能终端市场
    “3G将引领未来5年个人IT智能终端市场,2012年至2013年,中国个人IT智能终端接入方式中,3G将有大幅度提升。”在昨日下午举行的以“智能终端和移动营销”为主题平行分论坛上,IDC中国计算机系统研究部副研究总监王吉平预测,互联网进入终端市场将是一个新的起点。 王吉平分析过去几年的手机终端市场称,2009年-2011年可分别称为技术年、体验年和低端年,伴随着诺基亚、苹果、三星等品牌的起落,华为、中兴的产品在去年大量上市,2011年的手机终端市场呈现主体低端格局,2012年-2014年将再次轮回技术年、体验年和低端年。 王吉平说,中国消费类个人智能终端保有量中,手机占据将近一半比重,平板电脑占比非常少,即使预测2015年,
[手机便携]
杨学山点评移动智能终端产业:我们已进第二方阵
    在昨天召开的“移动智能终端技术创新与产业联盟”上,工业和信息化部副部长杨学山在致辞中表示,我国移动智能终端整体上已经进入全球第二方阵,产业界要加快速度,进入第一方阵。 杨学山说,移动智能终端是移动终端的构成部分,移动终端是这几年来技术创新和产业发展里面最活跃,规模扩张最快的部分,也是国际上国家间和企业间博弈的关键部分。 从产业制造的角度来看,接近80%的移动智能终端产能都在国内。“我们一直在考虑,制造业会不会移走,重新转移回发达国家,或者是去印尼、越南等低成本国家。但这几年不但没有减少,反而略有上升。”杨学山说,“实际上由于产业链、供应链的完善,使我们在制造环节的竞争优势,实际上已经很难在全球的其他地方再形成。” 从技
[手机便携]
比亚迪公开遥控驾驶控制相关专利,自动泊车功能或升级
企查查APP显示,2月23日,比亚迪(002594)公开名为“车辆的遥控驾驶控制方法、系统及车辆”专利,公开号为CN112389412A。 “车辆的遥控驾驶控制方法、系统及车辆”专利,图片来源:企查查 专利摘要显示,本发明的车辆的遥控驾驶控制方法可以实现对驱动电机的转速进行实时地且精确的控制,从而提升遥控驾驶体验。 图片来源:企查查 看到这,相信大家自然会想到自动泊车。 近年来,自动驾驶商业化落地受阻,自动泊车被认为是一个不错的切入点。相较于自动驾驶,自动泊车使用场景相对较简单,技术难度相对较小,但却能解决用户实际的用车痛点。 基于此,各大汽车厂商也纷纷在新车型上推出自动泊车功能。佐思产研相关数据显示,
[汽车电子]
比亚迪公开遥控驾驶控制相关专利,<font color='red'>自动</font>泊车功能或<font color='red'>升级</font>?
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved