一种基于透明计算的智能终端软件更新方法

摘要

本发明公开了一种基于透明计算的智能终端软件更新方法,包括如下步骤:S1.智能终端获取软件的启动指令,判断本地闪存中是否存储有所述软件的只读部分,是则跳转到步骤S2,否则跳转到步骤S3;S2.所述智能终端向服务端询问所述软件是否有更新,是则更新闪存中所述软件的只读部分,并下载所述软件的读写部分,运行所述软件,完成所述软件的更新,否则直接调用闪存中的所述软件只读部分,并下载所述软件的读写部分,运行该软件;S3.所述智能终端从服务端下载所述软件的只读部分和读写部分,并加载至本地存储器中,启动运行。本发明具有简单、方便、对用户透明、更新效率高等优点。

权利要求(6)
1.一种基于透明计算的智能终端软件更新方法,其特征在于,包括如下步骤: 51.智能终端获取软件的启动指令,判断本地闪存中是否存储有所述软件的只读部分,是则跳转到步骤S2,否则跳转到步骤S3 ; 52.所述智能终端向服务端询问所述软件是否有更新,是则更新闪存中所述软件的只读部分,并下载所述软件的读写部分,运行所述软件,完成所述软件的更新,否则直接调用闪存中的所述软件只读部分,并下载所述软件的读写部分,运行所述软件; 53.所述智能终端从服务端下载所述软件的只读部分和读写部分,并加载至本地存储器中,运行所述软件。
2.根据权利要求1所述的基于透明计算的智能终端软件更新方法,其特征在于:所述步骤S2中所述智能终端向服务端询问所述软件是否有更新的具体步骤包括: S2.1.所述智能终端向服务端发送所述软件的软件名称和软件版本号; S2.2.所述服务端根据所述软件名称获取存储在服务端的所述软件的程序包,并根据所述软件版本号判断所述软件是否有更新,并向智能终端返回判断结果。
3.根据权利要求2所述的基于透明计算的智能终端软件更新方法,其特征在于,还包括智能终端对外部资源更新的步骤S4,其具体步骤包括: 54.1.所述智能终端的操作系统或软件需要调用外部资源时,判断所述外部资源是否存储在本地闪存中,是则跳转到步骤S4.2 ;否则智能终端从服务端下载所述外部资源; S4.2.所述智能终端向服务端询问所述外部资源是否有更新,是则从服务端下载所述外部资源,否则直接调用本地闪存中所存储的外部。
4.根据权利要求3所述的基于透明计算的智能终端软件更新方法,其特征在于:所述步骤S4.2中所述智能终端向服务端询问所述外部资源是否有更新的具体步骤包括: S4.2.1.所述智能终端向服务端发送所述软件的软件名称和软件版本号; 54.2.2.所述服务端根据所述软件名称获取存储在服务端的所述软件的程序包,并根据所述软件版本号判断所述软件是否有更新,并向智能终端返回判断结果。
5.根据权利要求3所述的基于透明计算的智能终端软件更新方法,其特征在于,还包括智能终端对外围硬件设备驱动程序更新的步骤S5,其具体步骤包括: 55.1.所述智能终端需要启用某个外围硬件设备时,判断硬件设备的驱动程序是否存储在本地闪存中,是则跳转到步骤S5.2 ;否则智能终端从服务端下载所述驱动程序; S5.2.所述智能终端向服务端询问所述驱动程序是否有更新,是则从服务端下载所述驱动程序,否则直接调用本地闪存中所存储的驱动程序。
6.根据权利要求5所述的基于透明计算的智能终端软件更新方法,其特征在于,所述步骤S5.2中所述智能终端向服务端询问所述驱动程序是否有更新的具体步骤包括: S5.2.1.所述智能终端向服务端发送所述驱动程序的驱动名称和驱动版本号; S5.2.2.所述服务端根据所述驱动名称获取存储在服务端的所述驱动程序的程序包,并根据所述驱动版本号判断所述驱动程序是否有更新,并向智能终端返回判断结果。
说明
一种基于透明计算的智能终端软件更新方法

技术领域

[0001] 本发明涉及一种操作系统及软件的更新方法,尤其涉及一种基于透明计算的智能终端操作系统及软件的更新方法。

背景技术

[0002] 智能终端因其体积小巧,功能多样,应用也越来越广泛,其应用日益深入用户的日常生活。同时,智能终端的操作系统及应用软件的更新换代速度也越来越快,用户为了获得新的应用功能,或者获得更好的用户体验,需要随时根据智能终端的操作系统及应用软件的版本更新情况,及时下载更新操作系统或应用软件。在现有技术中,智能终端的操作系统或应用软件更新过程一般需要经过从服务端下载完整更新升级包,再将该更新升级包部署至本地存储器,从而更新本地存储器中的操作系统或应用软件。现有的升级更新模式,存在更新升级时间长,并且需要占用大量存储空间的缺点。

[0003] 透明计算是一种用户无需感知计算机操作系统、中间件、应用程序和通信网络的具体所在,只需根据自己的需求,通过网络从所使用的各种终端设备(包括固定、移动、以及家庭中的各类终端设备)中选择并使用相应服务(例如计算、电话、电视、上网和娱乐等)的计算模式。

[0004] 基于透明计算的软件执行模式,将软件(操作系统视为一类特殊软件)划分为程序段和外部资源,其中程序段又包括只读部分和读写部分。如图1所示,基于透明计算的智能终端的软件部署结构包括底层的底层驱动和超级系统(Meta OS),以及运行在超级系统上的操作系统,该操作系统为一个实例操作系统,以及运行在实例操作系统上的应用软件。基于透明计算的智能终端,本地存储器中不存储软件,而是在用户需要运行软件时,直接从服务端下载软件的程序段并加载至内存中运行,即可实现软件的启动运行,在软件的运行过程中,根据软件对外部资源的需求,按需从服务端下载外部资源,供软件调用。由于闪存的读取速度与内存的读取速度相当,智能终端只将该程序的读写部分存储在内存中,而将程序的只读部分存储在闪存中,只读的外部资源也存储在闪存中,在程序运行中直接从闪存中读取需要数据,这种策略一方面降低了程序在运行过程中对内存存储容量的需求,另一方面也保证了程序能够流畅运行。并且,由于闪存具备长期存储数据的特征,因此,闪存中存储的程序只读部分和外部资源在程序运行时无需每次都从服务端下载,可直接从闪存中读取,降低了智能终端与服务端的通信频率,提高了智能终端的程序运行效率。但这也导致了需要根据服务端对操作系统或应用软件的升级情况,操作系统视为一种特殊的软件,对智能终端闪存中所存储的程序只读部分进行同步升级的问题。

发明内容

[0005] 本发明要解决的技术问题就在于:针对现有技术存在的技术问题,本发明提供一种简单、方便、对用户透明的基于透明计算的智能终端软件更新方法。

[0006] 为解决上述技术问题,本发明提出的技术方案为:一种基于透明计算的智能终端软件更新方法,包括如下步骤:

51.智能终端获取软件的启动指令,判断本地闪存中是否存储有所述软件的只读部分,是则跳转到步骤S2,否则跳转到步骤S3 ;

52.所述智能终端向服务端询问所述软件是否有更新,是则更新闪存中所述软件的只读部分,并下载所述软件的读写部分,运行所述软件,完成所述软件的更新,否则直接调用闪存中的所述软件只读部分,并下载所述软件的读写部分,运行所述软件;

53.所述智能终端从服务端下载所述软件的只读部分和读写部分,并加载至本地存储器中,运行所述软件。

[0007] 作为本发明的进一步改进,所述步骤S2中所述智能终端向服务端询问所述软件是否有更新的具体步骤包括:

S2.1.所述智能终端向服务端发送所述软件的软件名称和软件版本号;

S2.2.所述服务端根据所述软件名称获取存储在服务端的所述软件的程序包,并根据所述软件版本号判断所述软件是否有更新,并向智能终端返回判断结果。

[0008] 作为本发明的进一步改进,还包括智能终端对外部资源更新的步骤S4,其具体步骤包括:

54.1.所述智能终端的操作系统或软件需要调用外部资源时,判断所述外部资源是否存储在本地闪存中,是则跳转到步骤S4.2 ;否则智能终端从服务端下载所述外部资源;

S4.2.所述智能终端向服务端询问所述外部资源是否有更新,是则从服务端下载所述外部资源,否则直接调用本地闪存中所存储的外部。

[0009] 作为本发明的进一步改进,所述步骤S4.2中所述智能终端向服务端询问所述外部资源是否有更新的具体步骤包括:

S4.2.1.所述智能终端向服务端发送所述软件的软件名称和软件版本号;

54.2.2.所述服务端根据所述软件名称获取存储在服务端的所述软件的程序包,并根据所述软件版本号判断所述软件是否有更新,并向智能终端返回判断结果。

[0010] 作为本发明的进一步改进,还包括智能终端对外围硬件设备驱动程序更新的步骤S5,其具体步骤包括:

55.1.所述智能终端需要启用某个外围硬件设备时,判断硬件设备的驱动程序是否存储在本地闪存中,是则跳转到步骤S5.2 ;否则智能终端从服务端下载所述驱动程序;

S5.2.所述智能终端向服务端询问所述驱动程序是否有更新,是则从服务端下载所述驱动程序,否则直接调用本地闪存中所存储的驱动程序。

[0011] 作为本发明的进一步改进,所述步骤S5.2中所述智能终端向服务端询问所述驱动程序是否有更新的具体步骤包括:

S5.2.1.所述智能终端向服务端发送所述驱动程序的驱动名称和驱动版本号;

S5.2.2.所述服务端根据所述驱动名称获取存储在服务端的所述驱动程序的程序包,并根据所述驱动版本号判断所述驱动程序是否有更新,并向智能终端返回判断结果。

[0012] 与现有技术相比,本发明的优点在于:本发明根据软件在运行过程中对软件代码、外部资源或驱动程序的使用需求,按需判断并更新当前需要更新的部分,整个更新过程对用户是透明的,具有算法简单、软件更新效率高等优点。

附图说明

[0013]图1为基于透明计算的智能终端软件部署结构示意图。

[0014]图2为本发明具体实施例的软件程序段更新流程示意图。

[0015]图3为本发明具体实施例的软件外部资源更新流程示意图。

[0016] 图4为本发明具体实施例的外围设备驱动程序更新流程示意图。

具体实施方式

[0017] 以下结合说明书附图和具体优选的实施例对本发明作进一步描述,但并不因此而限制本发明的保护范围。

[0018] 如图2所示,本实施例一种基于透明计算的智能终端软件更新方法,包括如下步骤:S1.智能终端获取软件的启动指令,判断本地闪存中是否存储有软件的只读部分,是则跳转到步骤S2,否则跳转到步骤S3;S2.智能终端向服务端询问软件是否有更新,是则更新闪存中软件的只读部分,并下载软件的读写部分,运行该软件,完成软件的更新,否则直接调用闪存中的软件只读部分,并下载软件的读写部分,运行该软件;S3.智能终端从服务端下载软件的只读部分和读写部分,并加载至本地存储器中,运行该软件。在本实施例中,根据基于透明计算的智能终端软件运行特点,即软件程序段的只读部分存储在闪存中,软件程序段的读写部分存储在内存中,智能终端在加载完程序段后,即可启动运行软件,并在软件的运行过程中根据对外部资源的需求,动态的向服务端申请资源文件。在软件更新过程中,采用流式的更新方法,即首先只更新存储在闪存中的程序段的只读部分,程序段的读写部分直接从服务端下载并直接加载至内存中,启动运行该软件,并在软件的运行过程中,在软件提出外部资源需求时,再更新软件所需的外部资源。

[0019] 在本实施例步骤S2中智能终端向服务端询问软件是否有更新的具体步骤包括:S2.1.智能终端向服务端发送软件的软件名称和软件版本号;S2.2.服务端根据软件名称获取存储在服务端的软件的程序包,并根据软件版本号判断软件是否有更新,并向智能终端返回判断结果。在本实施例中,服务端存储软件程序包,服务端通过接收智能终端所发送的软件名称和软件版本号,对所存储的软件程序包进行检索,并根据软件版本号进行判断,即可判断智能终端上所要运行的软件是否有更新,并将判断的结果返回至智能终端。

[0020] 如图3所示,在本实施例中,还包括智能终端对外部资源更新的步骤S4,其具体步骤为:S4.1.智能终端的操作系统或软件需要调用外部资源时,判断外部资源是否存储在本地闪存中,是则跳转到步骤S4.2 ;否则智能终端从服务端下载外部资源;S4.2.智能终端向服务端询问外部资源是否有更新,是则从服务端下载外部资源,否则直接调用本地闪存中所存储的外部。智能终端向服务端询问外部资源是否有更新的具体步骤为:S4.2.1.智能终端向服务端发送软件的软件名称和软件版本号;S4.2.2.服务端根据软件名称获取存储在服务端的软件的程序包,并根据软件版本号判断软件是否有更新,并向智能终端返回判断结果。在本实施例中,根据软件的运行情况动态的更新外部资源,在软件提出外部资源需求时,当在智能终端闪存中存储有外部资源时,向服务器询问外部资源是否有更新,有则通过从服务端下载更新该外部资源,否则直接调用闪存中的外部资源,当智能终端闪存中没存储有该外部资源时,则从服务端下载并部署该外部资源,供该软件调用。

[0021] 如图4所示,在本实施例中,还包括智能终端对外围硬件设备驱动程序更新的步骤S5,其具体步骤为:S5.1.智能终端需要启用某个外围硬件设备时,判断硬件设备的驱动程序是否存储在本地闪存中,是则跳转到步骤S5.2 ;否则智能终端从服务端下载驱动程序;S5.2.智能终端向服务端询问驱动程序是否有更新,是则从服务端下载驱动程序,否则直接调用本地闪存中所存储的驱动程序。智能终端向服务端询问驱动程序是否有更新的具体步骤为:S5.2.1.智能终端向服务端发送驱动程序的驱动名称和驱动版本号;S5.2.2.服务端根据驱动名称获取存储在服务端的驱动程序的程序包,并根据驱动版本号判断驱动程序是否有更新,并向智能终端返回判断结果。在本实施例中,智能终端可能包括多种不同的外围硬件设备,如蓝牙设备,GPS定位设备、陀螺仪设备、重力感应设备等等,只有在特定的软件运行时,才需要启用这些设备,因此,在这些设备启用前,并不判断是否需要对这些设备的驱动程序进行更新,只有在需要启用这些设备时,才针对性的判断并更新该设备的驱动程序。当软件运行中需要启用蓝牙进行数据传输时,智能终端判断本地闪存中是否存储有蓝牙设备的驱动程序,本地存储有蓝牙驱动程序时,则向服务端发送蓝牙驱动名称以及蓝牙驱动版本号,由服务端判断蓝牙驱动是否有更新,并将判断结果返回至智能终端,当蓝牙驱动有更新时,智能终端从服务端下载该蓝牙驱动程序,完成驱动的更新,否则直接使用本地闪存中存储的蓝牙驱动,当智能终端本地闪存中没有存储蓝牙驱动时,则直接从服务端下载该蓝牙驱动。

[0022] 在本实施例中,对软件的更新采用流式更新策略,当软件需要更新时,只更新软件启动必须的程序段,并启动运行软件,当软件对外部资源提出调用需求时,或者在软件需要启用外围硬件设备时,才判断并更新外部资源或外围设备驱动。在软件的更新过程中,用户无需主动执行软件的更新操作,并且等待软件整个更新包下载完成,并进行部署。用户只需要选择启动软件,在软件的运行过程中动态的对软件进行更新,整个更新过程对用户来说是透明的,大大缩短了用户等待软件更新和部署的时间,具有更新效率高、用户体验度好的优点。

[0023] 上述只是本发明的较佳实施例,并非对本发明作任何形式上的限制。虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明。因此,凡是未脱离本发明技术方案的内容,依据本发明技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均应落在本发明技术方案保护的范围内。

附图





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值