著录项信息
专利名称 | 一种软件升级方法 |
申请号 | CN201110277371.0 | 申请日期 | 2011-09-19 |
法律状态 | 授权 | 申报国家 | 中国 |
公开/公告日 | 2013-03-27 | 公开/公告号 | CN102999349A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G06F9/445 | IPC分类号 | G;0;6;F;9;/;4;4;5查看分类表>
|
申请人 | 施耐德电器工业公司 | 申请人地址 | 法国吕埃-马迈松
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 施耐德电器工业公司 | 当前权利人 | 施耐德电器工业公司 |
发明人 | 莫家军;杨波 |
代理机构 | 北京市柳沈律师事务所 | 代理人 | 姚冠扬 |
摘要
本发明提供了一种软件升级方法,该方法为应用程序中的可能使用到的每个功能设置一个变量组,该变量组中包含记录使用次数的变量,当应用程序调用某一功能时,就将该功能对应的变量组的值进行更新;根据用户的升级指令,将需要升级设备中的固件与新版本的固件的功能进行比较;向用户提示新版本的固件和当前版本的固件不同的功能,以及这些功能的使用次数和使用频率中的至少一个。通过本发明的方法,可以帮助用户知道他经常使用的功能是哪些,还可以帮助用户来比较新版固件和现有版本之间的区别。用户可以根据上述两个信息来决定是否需要升级固件。
1.一种软件升级方法,其特征在于,包含如下步骤:
在用户获得新版本的固件后,根据用户的升级指令,将需要升级设备中的固件与新版本的固件的功能进行比较;
向用户提示新版本的固件和当前版本的固件不同的功能,以及这些功能的使用次数和使用频率中的至少一个;
判断用户是否确认要升级,如为“是”,将新版本的固件传输给需要升级的设备,结束;
如为“否”,结束。
2.一种软件升级方法,其特征在于,包含如下步骤:
为应用程序中的各个功能分别设置一个变量组,该变量组中包含记录使用次数的变量;
将各个功能对应的变量组储存在永久性的存储器中;
当应用程序调用某一功能时,就将该功能对应的变量组的值进行更新;
在用户获得新版本的固件后,根据用户的升级指令,将需要升级设备中的固件与新版本的固件的功能进行比较;
向用户提示新版本的固件和当前版本的固件不同的功能,以及这些功能的使用次数和使用频率中的至少一个;
判断用户是否确认要升级,如为“是”,将新版本的固件传输给需要升级的设备,结束;
如为“否”,结束。
3.如权利要求2所述的软件升级方法,其特征在于,所述变量组中还包含记录初次使用时间的变量。
4.如权利要求1或2所述的软件升级方法,其特征在于,所述使用频率通过将使用次数除以从初次使用时刻到当前时刻所经过的时间得到。
5.如权利要求1所述的软件升级方法,其特征在于,还包括根据这些不同功能的使用次数或使用频率,给用户是否需要升级的提示的步骤。
6.如权利要求1所述的软件升级方法,其特征在于,通过软件应用程序设置网络配置参数,使用户计算机与需要升级的PLC设备通过物理连接,获取当前设备里的固件,将固件与新版本的固件的功能进行比较。
一种软件升级方法\n技术领域\n[0001] 本发明涉及固件和软件应用程序,尤其涉及一种软件升级方法。\n背景技术\n[0002] 随着计算机网络技术的发展,因特网逐渐成为人们非常普遍使用的一个工具,因为它可以帮助人们节约资源、花费和时间等等。在自动工业领域,生厂商会把新的固件(firmware)版本放在网络上,用户可以通过下载相关的文件,将新版本的固件升级到自己的PLC(Programmable logic Controller)模块中。但是,通常用户并不知道新的固件版本和现有的版本之间功能上的具体差别,只知道这是个新版本。但由于不同的用户在不同的工业应用领域使用PLC模块的不同的特征,新版本的固件可能是修复某些用户根本不在乎的漏洞或者是增加或修改了某些用户根本没有使用的功能。也就是说,这个升级的版本,对于某些用户来说,是没有用的,他根本没必要下载这个版本。但由于他不知道这个版本的具体内容,他经常也就糊里糊涂地下载并升级了,这反而给用户的使用造成了不便。\n[0003] 目前,对于用户来说,有两种方法可以知道两个版本之间的区别。第一种:用户可以参考版本说明。如果用户对PLC有一定的了解,版本说明对他来说还是有帮助的。但是,很多用户只知道如何使用PLC,对其他的了解甚少,版本说明对他来说可能没什么用。另外,要阅读版本说明,需要花费较多时间。第二种,用户可以请求客户服务的帮助。这种方法最快捷,但是技术支持人员只能给用户关于版本区别的比较粗略的概念,他们一般也不能给用户特别详尽、准确的关于版本之间差别的信息,有时还不能满足用户的需要。而且,用户并不知道,在固件中哪些功能是会被应用程序经常调用的,哪些功能是不常用的。这样的话,就算知道了新版本的功能,用户也不能确定该不该升级。\n[0004] 因此,就存在解决该问题的需求。\n发明内容\n[0005] 本发明是鉴于上面的问题作出,提供了一种通过帮助客户很容易地知道哪些功能是常用的,以及新版本和现有版本之间的区别,使得用户可以判断是否需要升级该固件的方法。\n[0006] 本发明提供了一种软件升级方法,该方法包含如下步骤:在用户获得新版本的固件后,根据用户的升级指令,将需要升级设备中的固件与新版本的固件的功能进行比较;向用户提示新版本的固件和当前版本的固件不同的功能,以及这些功能的使用次数和使用频率中的至少一个;判断用户是否确认要升级,如为“是”,将新版本的固件传输给需要升级的设备,结束;如为“否”,结束。\n[0007] 通常,在固件中给用户提供了很多功能,但是用户并不知道哪些功能是经常被使用的。\n[0008] 通过本发明的方法,可以帮助用户知道他经常使用的功能是哪些,还可以帮助用户来比较新版固件和现有版本之间的区别。用户可以根据上述两个信息来决定是否需要升级固件。\n附图说明\n[0009] 其他方面、特征和优点将随着在结合附图考虑的同时参照下面详细描述变得容易理解而可以轻易被确定。\n[0010] 图1是根据本发明的具体实施方式中使用功能记录过程的流程图;\n[0011] 图2是图1中步骤103的具体过程的流程图;\n[0012] 图3是根据本发明的具体实施方式的软件升级方法的流程图。\n[0013] 附图意在描述本公开内容的示例性实施方式,不应被解释成限制其范围。\n具体实施方式\n[0014] 在描述图中所示的实施方式过程中,为了清楚的缘故采用了特定的术语。但是,这个专利说明书的公开内容并不意在局限于如此选择的该特定术语,并且应理解为每个特定元件包括所有以类似方式操作并且实现类似效果的技术等同物。\n[0015] 现结合附图和具体实施方式对本发明进行详细的说明。\n[0016] 本发明的具体实施方式中提供了一种软件升级方法,通过记录应用程序所使用的各个功能的次数或频率,并在有新版本的固件时,向用户提供新版本和现有版本不同的功能,以及这些功能的使用次数或频率,以供用户参考。\n[0017] 参见图1,图1是根据本发明的具体实施方式中的使用功能记录过程的流程图,该过程包含如下步骤:\n[0018] 步骤101,为应用程序中的各个功能分别设置一个变量组,以记录每个功能的使用情况。这变量组中至少包含记录使用次数的变量,还可以包含初始使用时刻等其他信息。具体定义方法可如下所示:\n[0019]\n[0020] 功能代号Function1、Function2等具体代表什么功能,需要预先定义,并以功能列表的形式存储在寄存器中。\n[0021] 步骤102,将各个功能对应的变量组储存在永久性的存储器中,如SD卡或非易失性存储器等在断电后不会丢失数据的存储器中。以下为变量存储方式的一个实例:\n[0022]\n[0023] 步骤103,应用程序运行的过程中,当应用程序调用某一功能时,就将该功能对应的变量组的值进行更新。\n[0024] 对于使用次数变量,就是将使用次数变量加1,并且如某功能是第一次被调用,则调用时刻记录在初始使用时刻变量中。\n[0025] 参见图2,该步骤具体可以分为如下几步:\n[0026] 步骤1031,在应用程序调用某一功能时,读取该功能对应的一组变量的存储地址读取该组变量的值;\n[0027] 步骤1032,判断初始使用时刻变量的值是否为0,如是,前进到步骤1033,如否,前进到步骤1034;\n[0028] 步骤1033,将当前时刻赋给初始使用时刻变量;\n[0029] 步骤1034,将使用次数变量的值加1;\n[0030] 步骤1035,将该组变量更新后的值写入该组变量的地址中。\n[0031] 具体程序可如下所示:\n[0032]\n[0033] 可以看出,图2所示的步骤以及上面的程序只是为了说明本发明的升级方法的可实施性,本领域的技术人员很容易想到,只要能记录各个功能的使用情况(次数、初始时间)的任何方法都可以应用到本发明中。\n[0034] 平时的使用过程中记录了各个功能的使用情况后,在固件升级时就可以利用这些信息给用户提供是否需要升级的提示信息,帮助用户更好地作出判断。\n[0035] 图3是根据本发明的具体实施方式的软件升级方法的流程图,如图3所示,本发明的具体实施方式的软件升级方法包括如下步骤。\n[0036] 步骤104,在用户获得新版本的固件后,判断是否得到用户的升级指令,如是,前进到步骤105。\n[0037] 用户一般是从网络上下载新版本的固件,在下载了新版本的固件后,会存放在用户计算机的硬盘等内部存储设备或连接到计算机的外部存储设备中,如可移动存储器等中。\n[0038] 步骤105,将需要升级设备中的固件与新版本的固件的功能进行比较。\n[0039] 在步骤105中,通过软件应用程序配置参数,使用户计算机与需要升级的设备(如PLC)物理连接,从需要升级的设备获取当前版本的固件的功能,将当前版本的固件的功能与新版本的功能进行比较。\n[0040] 可以在每个版本的固件中都设置一个功能列表,该列表中列出当前版本中有哪些功能。该功能列表的定义规则可以与应用程序中的功能列表的定义规则相同或者有一定的对应关系。\n[0041] 步骤106,向用户提示新版本的固件和当前版本的固件不同的功能,以及这些功能的使用次数和使用频率中的至少一个。\n[0042] 如向用户提示使用频率,则需要将使用次数除以从初次使用时刻到当前时刻所经过的时间,以得到使用频率。\n[0043] 在步骤106中,还可以根据这些不同功能的使用次数或使用频率,给用户是否需要升级的提示。如,某一功能的使用次数或使用频率为0,可以建议用户不需要升级,否则,建议用户升级。\n[0044] 其中,读取各个功能的对应的变量组或计算各个功能的使用频率的步骤可以设置在步骤105中,这样的话就需要对所有的功能都读取或计算,然后在步骤106中选取新版本的固件和当前版本的固件不同的功能的使用次数或使用频率提示给用户。这个步骤如果设置在步骤106中,那只需要读取或计算新版本的固件和当前版本的固件不同的功能。\n[0045] 本领域的技术人员很容易想到,在本实施方式中,各个功能的使用次数和频率的获得方式并不限于本实施方式中图1所述的方式,只要能向用户提示各个功能的使用情况,帮助用户判断是否需要升级的方法都可以用于本发明的升级方法中。\n[0046] 步骤107,用户在阅读了这些提示信息后给出是否升级的指示,判断用户是否确认要升级,如为“是”,进入步骤108,如为“否”,结束。\n[0047] 步骤108,将新版本的固件传输给需要升级的设备,结束。\n[0048] 在升级结束后,重启该设备就可以运行新版本的固件。\n[0049] 通过上述方法,就可以在升级之前提示用户新版本和老版本之间不同的功能,以及这些功能是否被使用的情况。用户可以根据这些信息来判断是否需要升级。这样的方法,对用户来说非常简单,无需看很复杂的版本说明,也不会误升级不需要的版本,提高了效率。\n[0050] 对于已经如此描述的本发明的一些实施方式,显而易见的是它们可以以很多方式变化。这种变型不应认为是偏离本发明的范围,而是所有这种改进意图在于包括在本发明的范围之内。
法律信息
- 2016-06-08
- 2013-04-24
实质审查的生效
IPC(主分类): G06F 9/445
专利申请号: 201110277371.0
申请日: 2011.09.19
- 2013-03-27
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2006-04-12
|
2004-10-08
| | |
2
| |
2011-02-09
|
2009-07-27
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |