信息发送及固件升级方法、装置、终端、设备及存储介质与流程

文档序号:11432118阅读:220来源:国知局
信息发送及固件升级方法、装置、终端、设备及存储介质与流程

本发明涉及电子技术领域,尤其涉及信息发送及固件升级方法、装置、终端、设备及存储介质。



背景技术:

固件(firmware)是存储在可擦除只读存储器(eraseablereadonlymemory,简称erom)或可擦除可编程只读存储器(erasableprogrammablereadonlymemory,简称eprom)中的程序,通俗的理解就是“固化的软件”。固件担任着一个系统最基础最底层工作的软件。而在硬件设备中,固件就是硬件设备的灵魂,因为一些硬件设备除了固件以外没有其它软件组成,因此,固件也就决定着硬件设备的功能及性能。其中,固件也可以称为应用固件。

固件的升级,有时也称固件刷新、刷鞋、重写、烧录或刷机,是指把新的固件写入可擦除可编程只读存储器中,代替原有的固件的过程。但是,当固件出现损坏时,无法实现升级,只能将固件返厂修理。例如,在金融控制系统中,当控制系统的固件出现损坏时,与主控设备建立连接后无法实现对固件的正常升级,只能返厂维修,造成种种不便,并且使用效率低。



技术实现要素:

本发明实施例提供信息发送及固件升级方法、装置、终端、设备及存储介质,可以解决因应用固件损坏导致的不能升级的问题。

第一方面,本发明实施例提供了一种信息发送方法,包括:

终端检测应用固件在运行时是否发生损坏;

若是,所述终端控制信号发送装置的开关打开,以控制所述信号发送装置向装载器bootloader发送强制升级信号;

当终端检测到作用复位按钮时,向所述bootloader发送由所述应用固件向所述bootloader跳转的命令;

当终端接收到所述应用固件升级的命令时,向所述bootloader发送所述应用固件升级的请求;

当终端接收到所述bootloader发送的反馈信号时,向所述bootloader发送所述应用固件的升级包,以使所述bootloader根据所述升级包对所述应用固件进行升级。

第二方面,本发明实施例还提供了一种固件升级的方法,包括:

装载器bootloader接收强制升级信号,并判断所述强制升级信号是否有效;其中,所述强制升级信号为:当终端检测到应用固件运行发生损坏时,控制信号发送装置发送的信号;

若是,且所述bootloader接收到由所述应用固件向所述bootloader跳转的命令,检测是否接收到所述应用固件升级的请求;

若是,所述bootloader接收所述应用固件的升级包,并根据所述升级包对所述应用固件进行升级。

第三方面,本发明实施例还提供了一种信息发送装置,包括:

应用固件检测模块,用于检测所述应用固件是否发生损坏;

控制模块,用于若是,控制信号发送装置的开关打开,以控制所述信号发送装置向装载器bootloader发送强制升级信号;

第一发送模块,用于当检测到作用复位按钮时,向所述bootloader发送由所述应用固件向所述bootloader跳转的命令;

第二发送模块,用于当接收到所述应用固件升级的命令时,向所述bootloader发送所述应用固件升级的请求;

第三发送模块,用于当接收到所述bootloader发送的反馈信号时,向所述bootloader发送所述应用固件的升级包,以使所述bootloader根据所述升级包对所述应用固件进行升级。

第四方面,本发明实施例还提供了一种固件升级的装置,包括:

第一判断模块,用于接收强制升级信号,并判断所述强制升级信号是否有效;其中,所述强制升级信号为:当终端检测到应用固件运行发生损坏时,控制信号发送装置发送的信号;

升级请求检测模块,用于若是,且接收到由所述应用固件向bootloader跳转的命令,检测是否接收到所述应用固件升级的请求;

升级模块,用于若是,接收所述应用固件的升级包,并根据所述升级包对所述应用固件进行升级。

第五方面,本发明实施例还提供了一种终端,包括:

一个或多个处理器;

存储装置,用于存储一个或多个程序,

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明实施例所述的信息发送方法。

第六方面,本发明实施例还提供了一种设备,包括:

一个或多个处理器;

存储装置,用于存储一个或多个程序,

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明实施例所述的固件升级方法。

第七方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例所述的信息发送方法。

第八方面,本发明实施例还一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明实施例所述的固件升级方法。

本发明实施例提供的技术方案,通过bootloader接收当应用固件运行发生损坏时由终端控制信号发送装置发送的强制升级信号,并判断接收到的强制升级信号有效,且接收到由应用固件向bootloader跳转的命令来检测是否接收到应用固件的升级请求;通过当接收到升级请求时,根据接收到的升级包对应用固件进行升级,可以解决因应用固件损坏导致的不能升级的问题。

附图说明

通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:

图1是本发明实施例提供的一种信息发送方法流程图;

图2是本发明实施例提供的一种固件升级方法流程图;

图3是本发明实施例提供的另一种固件升级方法流程图;

图4是本发明实施例提供的一种信息发送装置结构框图;

图5是本发明实施例提供的一种固件升级结构框图;

图6是本发明实施例提供的一种终端结构示意图;

图7是本发明实施例提供的一种设备结构示意图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。

图1是本发明实施例提供的一种信息发送方法流程图,所述方法由信息发送装置来执行,所述装置由软件和/或硬件来执行,所述装置配置在手机、计算机等终端中,所述方法应用于控制设备中固件升级等场景中。如图1所示,本实施例提供的技术方案包括:

s110:终端检测应用固件在运行时是否发生损坏。

当应用固件运行时,由于受到雷击、电磁干扰等影响,容易造成应用固件中代码被修改,或者代码擦除等现象,造成应用固件的损坏。其中,应用固件设置在嵌入式设备上,终端与设备实现有线或者无线连接。终端可以对设备上的应用固件的运行状态进行监控,终端检测应用固件是否发生损坏的方式可以是:终端向设备发送应用固件升级的请求,在设定时间内收到应用固件升级失败的信息,确定应用固件发生损坏。

需要说明的是,终端检测应用固件是否发生损坏的方式并不局限于上述的方式,还可以是其他方式。

s120:若是,所述终端控制信号发送装置的开关打开,以控制所述信号发送装置向装载器bootloader发送强制升级信号。

在本实施例中,若终端检测到应用固件发生损坏,控制信号发送装置的开关打开,以控制信号发送装置向bootloader发送强制升级信号,若终端没有检测到应用固件发生损坏,控制信号发送装置的开关关闭。其中,强制升级信号是对应用固件进行强制升级的信号。信号发送装置可以是外部的提供强制升级信号的电路,强制升级信号可以是高电平信号,或者低电平信号,或者也可以是其他信号。

bootloader置于嵌入式设备中,是嵌入式系统在加电后执行的第一段代码程序,在它完成cpu和相关硬件的初始化之后,再将操作系统映像或固化的嵌入式应用程序装在到内存中然后跳转到操作系统所在的空间,启动操作系统运行。

需要说明的是,信号发送装置的开关除了终端控制打开之外,也可以是通过手动打开。例如,若终端检测到应用固件发生损坏时,在终端的显示屏幕上显示应用固件发生损坏的提示信息;当提示信息显示时,手动打开信号发送装置的开关,以使信号发送装置向bootloader发送对应用固件进行强制升级信号。

s130:当终端检测到作用复位按钮时,向所述bootloader发送由所述应用固件向所述bootloader跳转的命令。

在本实施例中,当应用固件进行升级时,是由bootloader进行控制。当应用固件运行,且需要升级时,系统需要由应用固件跳转到bootloader,由bootloader与终端进行交互,控制应用固件的升级。

在本实施例中,当应用固件运行时发生损坏,若检测到作用复位按钮,终端向bootloader发送由应用固件向bootloader的跳转命令,以使系统在bootloader中运行,由bootloader控制应用固件进行升级。

s140:当终端接收到所述应用固件升级的命令时,向所述bootloader发送所述应用固件升级的请求。

在本实施例中,当用户作用终端屏幕上的应用固件升级的选项时,终端接收到应用固件升级的命令,向置于设备上的bootloader发送应用固件升级的请求。bootloader接收到应用固件升级的请求,对应用固件升级的请求进行响应,并向终端发送反馈信号,以使终端确认bootloader已处于接收应用固件升级包的状态,并使终端发送应用固件升级包。

s150:当终端接收到所述bootloader发送的反馈信号时,向所述bootloader发送所述应用固件的升级包,以使bootloader根据所述升级包对所述应用固件进行升级。

在本实施例中,反馈信号是用于表明bootloader对终端发送的应用固件升级请求进行响应的反馈信号。当终端接收到反馈信号时,确定bootloader可以接收应用固件的升级包(或者bootloader处于接收应用固件升级包的状态),并向bootloader发送应用固件的升级包,以使bootloader根据所述升级包对所述应用固件进行升级。

本实施例提供的一种信息发送方法,若终端检测到应用固件运行时发生损坏,通过信号发送装置向bootloader发送强制升级信号,若检测到作用复位按钮,向bootloader发送由应用固件向bootloader跳转的命令;若接收到应用固件升级的命令,向bootloader发送升级请求,并发送应用固件的升级包,以使bootloader根据升级包对应用固件进行升级,可以解决应用固件损坏导致不能升级的问题。

图2是本发明实施例提供的一种固件升级方法的流程图,所述方法由固件升级装置来执行,所述装置由软件和/或硬件来执行,所述装置配置在嵌入式设备或者其他设置有应用固件的设备中。如图2所示,本发明实施例提供的技术方案包括:

s210:装载器bootloader接收强制升级信号,并判断所述强制升级信号是否有效;其中,强制升级信号为:当终端检测到应用固件运行发生损坏时,控制信号发送装置发送的信号。

本实施例中,强制升级信号为对应用固件进行升级的信号。对于强制升级信号是否有效的判断方式可以是如下的方式:bootloader内存储有用于判断强制信号有效的注册表,如果bootloader接收的强制升级的信号与注册表中的信号对应,则接收到的强制升级的信号有效,否则强制升级的信号无效。

需要说明的是,对于强制升级信号是否有效的判断方式并不局限于上述的方式,还可以是其他方式,例如,bootloader可以和终端对强制升级信号进行协议,具体的,对强制升级信号的参数进行设定,通过接收到的强制升级信号的参数进行判断是否有效。

s220:若是,且所述bootloader接收到由所述应用固件向所述bootloader跳转的命令,检测是否接收到所述应用固件升级的请求。

在本实施例中,若bootloader判断接收到的强制升级信号有效,且接收到由应用固件向bootloader跳转的命令,检测是否接收到应用固件升级的请求。

其中,由应用固件向bootloader跳转的命令可以理解为一个设备中系统重新启动的命令,当系统重新启动时,先运行bootloader,由bootloader检测是否接收到终端发送的应用固件升级的请求。

s230:若是,所述bootloader接收所述应用固件的升级包,并根据所述升级包对所述应用固件进行升级。

在本实施例中,若bootloader接收到应用固件升级的请求,接收终端发送的应用固件的升级包,并根据升级包对应用固件进行升级。具体的,bootloader接收应用固件的升级包,对升级包进行校验,校验成功后,将升级包的数据写入应用固件,其中,包括对升级前的应用固件中程序的替换或者增加等。

需要说明的是,当应用固件的数量为多个时,终端检测到的其中一个应用固件运行发生损坏时,可以获取该应用固件的标识信息,向bootloader发送应用固件升级请求时携带应用固件的标识信息,bootloader根据标识信息确定升级的应用固件,当bootloader根据接收到升级包时对确定的应用固件进行升级。

需要说明的是,当终端检测到运行发生损坏的应用固件的数量大于1个时,向bootloader发送应用固件升级请求以及发送升级包时均携带应用固件的标识信息,bootloader根据标识信息确定需要升级的应用固件,并且bootloader根据接收到升级包以及升级包的标识信息对损坏的至少两个应用固件进行依次升级或者同时升级。

本实施例提供了一种固件升级方法,通过bootloader接收当应用固件运行发生损坏时由终端控制信号发送装置发送的强制升级信号,并判断接收到的强制升级信号有效,且接收到由应用固件向bootloader跳转的命令来检测是否接收到应用固件的升级请求;通过当接收到升级请求时,根据接收到的升级包对应用固件进行升级,可以解决因应用固件损坏导致的不能升级的问题。

在上述实施例的基础上,所述的固件升级方法还包括:若所述bootloader判断所述强制升级的信号无效,且接收到由所述应用固件向所述bootloader跳转的命令以及未接收到所述应用固件升级的请求,控制应用程序在所述应用固件中运行。具体的,若bootloader判断强制升级信号无效,可以确定应用固件未发生损坏;若接收到应用固件向bootloader跳转的命令,系统需要重新启动,系统启动时先在bootloader中运行,若bootloader未接收升级请求,控制应用程序在应用固件中运行。由此,通过判断强制升级信号无效,且接收到应用固件向bootloader跳转的命令以及未接收到所述应用固件升级的请求,控制应用程序在应用固件中运行,可以根据需要对应用固件进行控制,提高应用固件的管理效率。

需要说明的是,当应用固件发生损坏时,应用固件有时是可以运行的。

在上述实施例的基础上,所述固件升级方法还包括:判断所述应用固件是否升级成功;若是,控制应用程序在所述应用固件中运行;若否,返回检测是否接收到所述应用固件升级的请求的操作。由此,通过对应用固件是否升级成功的判断,可以提高应用固件升级的效率。

在上述实施例的基础上,所述固件升级方法还包括:当所述bootloader接收到所述应用固件升级的请求时,向所述终端发送反馈信号,以使所述终端发送所述应用固件的升级包。其中,反馈信号是用于表明bootloader对终端发送的应用固件升级请求进行响应的反馈信号。当bootloader向终端发送反馈信号时,处于接收应用固件升级包的状态,当bootloader接收到终端发送的应用固件的升级包时,根据应用固件的升级包对应用固件进行升级。由此,通过对向终端发送反馈信号以使终端发送应用固件的升级包,可以提高应用固件升级流程的管理效率。

图3是本发明实施例提供的一种固件升级方法流程图,如图3所示,本实施例提供的技术方案包括:

s310:终端检测应用固件在运行时是否发生损坏。

s320:若是,所述终端控制信号发送装置的开关打开,以控制所述信号发送装置向装载器bootloader发送强制升级信号。

s330:bootloader接收强制升级信号,判断所述强制升级信号是否有效。

s340:终端检测到作用复位按钮。

s350:终端发送由所述应用固件向所述bootloader跳转的命令给bootloader。

s360:bootloader接收由所述应用固件向所述bootloader跳转的命令,运行bootloader。

s370:终端接收到所述应用固件升级的命令。

s380:终端发送所述应用固件升级的请求给bootloader。

s390:bootloader判断强制升级信号有效,接收所述应用固件升级的请求。

s391:bootloader发送反馈信号给终端。

s392:终端接收bootloader发送的反馈信号。

s393:终端发送所述应用固件的升级包给所述bootloader,

394:bootloader接收所述升级包,并根据所述升级包对应用固件进行升级。

图4是本发明实施例提供的一种信息发送装置结构框图,所述装置用于执行一种信息发送方法,如图4所示,所述装置400包括:应用固件检测模块410、控制模块420、第一发送模块430、第二发送模块440以及第三发送模块450。

其中,应用固件检测模块410,用于检测应用固件在运行时是否发生损坏;

控制模块420,用于若是,控制信号发送装置的开关打开,以控制所述信号发送装置向装载器bootloader发送强制升级信号;

第一发送模块430,用于当检测到作用复位按钮时,向所述bootloader发送由所述应用固件向所述bootloader跳转的命令;

第二发送模块440,用于当接收到所述应用固件升级的命令时,向所述bootloader发送所述应用固件升级的请求;

第三发送模块450,用于当接收到所述bootloader发送的反馈信号时,向所述bootloader发送所述应用固件的升级包,以使所述bootloader根据所述升级包对所述应用固件进行升级。

本实施例提供的一种信息发送装置,若终端检测到应用固件运行时发生损坏,通过信号发送装置向bootloader发送强制升级信号,若检测到作用复位按钮,向bootloader发送由应用固件向bootloader跳转的命令;若接收到应用固件升级的命令,向bootloader发送升级请求,并发送应用固件的升级包,以使bootloader根据升级包对应用固件进行升级,可以解决应用固件损坏导致不能升级的问题。

图5是本发明实施例提供的一种固件升级的装置结构框图,所述装置用于执行一种固件升级方法,如图5所示,所述装置包括:第一判断模块510,升级请求检测模块520以及升级模块530。

其中,第一判断模块510,用于接收强制升级的信号,并判断所述强制升级信号是否有效;其中,所述强制升级信号为:当终端检测到应用固件运行发生损坏时,控制信号发送装置发送的信号;

升级请求检测模块520,用于若是,且接收到由所述应用固件向所述bootloader跳转的命令,检测是否接收到所述应用固件升级的请求;

升级模块530,用于若是,接收所述应用固件的升级包,并根据所述升级包对所述应用固件进行升级。

进一步的,所述装置还包括:第二判断模块540,用于若判断所述强制升级的信号无效,且接收到由所述应用固件向所述bootloader跳转的命令以及未接收到所述应用固件升级的请求,控制应用程序在所述应用固件中运行。

进一步的,所述装置还包括第三判断模块550,用于判断所述应用固件是否升级成功;若是,控制应用程序在所述应用固件中运行;若否,返回检测是否接收到所述应用固件升级的请求的操作。

进一步的,所述装置还包括反馈信号发送模块560,用于当所述bootloader接收到所述应用固件升级的请求时,向所述终端发送反馈信号,以使所述终端发送所述应用固件的升级包。

本发明实施例提供的一种固件升级装置,通过bootloader接收当应用固件运行发生损坏时由终端控制信号发送装置发送的强制升级信号,并判断接收到的强制升级信号有效,且接收到由应用固件向bootloader跳转的命令来检测是否接收到应用固件的升级请求;通过当接收到升级请求时,根据接收到的升级包对应用固件进行升级,可以解决因应用固件损坏导致的不能升级的问题。

图6是本发明实施例提供的一种终端的结构示意图,图6示出了适于用来实现本发明实施方式的示例性终端612的框图。图6显示的终端612仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图6所示,终端612以通用计算设备的形式表现。终端612的组件可以包括但不限于:一个或者多个处理器或者处理单元616,系统存储器628,连接不同系统组件(包括系统存储器628和处理单元616)的总线618。

总线618表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(isa)总线,微通道体系结构(mac)总线,增强型isa总线、视频电子标准协会(vesa)局域总线以及外围组件互连(pci)总线。

终端612典型地包括多种计算机系统可读介质。这些介质可以是任何能够被终端612访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。

系统存储器628可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(ram)630和/或高速缓存存储器632。终端612可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统634可以用于读写不可移动的、非易失性磁介质(图6未显示,通常称为“硬盘驱动器”)。尽管图6中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如cd-rom,dvd-rom或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线618相连。存储器628可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。

具有一组(至少一个)程序模块642的程序/实用工具640,可以存储在例如存储器628中,这样的程序模块642包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块642通常执行本发明所描述的实施例中的功能和/或方法。

终端612也可以与一个或多个外部设备614(例如键盘、指向设备、显示器624等)通信,还可与一个或者多个使得用户能与该终端612交互的设备通信,和/或与使得该终端612能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口622进行。并且,终端612还可以通过网络适配器620与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器620通过总线618与终端612的其它模块通信。应当明白,尽管图6中未示出,可以结合终端612使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。

处理单元616通过运行存储在系统存储器628中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的可移动金融设备的安全认证方法。

也即,所述处理单元执行所述程序时实现:检测应用固件在运行时是否发生损坏;若是,控制信号发送装置的开关打开,以控制所述信号发送装置向装载器bootloader发送强制升级信号;当检测到作用复位按钮时,向所述bootloader发送由所述应用固件向所述bootloader跳转的命令;当接收到所述应用固件升级的命令时,向所述bootloader发送所述应用固件升级的请求;当接收到所述bootloader发送的反馈信号时,向所述bootloader发送所述应用固件的升级包,以使所述bootloader根据所述升级包对所述应用固件进行升级。

本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例提供的信息发送方法:检测应用固件在运行时是否发生损坏;若是,控制信号发送装置的开关打开,以控制所述信号发送装置向装载器bootloader发送强制升级信号;当检测到作用复位按钮时,向所述bootloader发送由所述应用固件向所述bootloader跳转的命令;当接收到所述应用固件升级的命令时,所述终端向所述bootloader发送所述应用固件升级的请求;当接收到所述bootloader发送的反馈信号时,向所述bootloader发送所述应用固件的升级包,以使所述bootloader根据所述升级包对所述应用固件进行升级。

可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。

计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。

计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、rf等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如”c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。

图7为本发明实施例提供的一种设备结构示意图。图7示出了适于用来实现本发明实施方式的示例性设备712的框图。图7显示的设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图7所示,设备712以通用计算设备的形式表现。设备712的组件可以包括但不限于:一个或者多个处理器或者处理单元716,系统存储器728,连接不同系统组件(包括系统存储器728和处理单元716)的总线718。

总线718表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(isa)总线,微通道体系结构(mac)总线,增强型isa总线、视频电子标准协会(vesa)局域总线以及外围组件互连(pci)总线。

设备712典型地包括多种计算机系统可读介质。这些介质可以是任何能够被设备712访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。

系统存储器728可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(ram)730和/或高速缓存存储器732。设备712可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统734可以用于读写不可移动的、非易失性磁介质(图7未显示,通常称为“硬盘驱动器”)。尽管图7中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如cd-rom,dvd-rom或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线718相连。存储器728可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。

具有一组(至少一个)程序模块742的程序/实用工具740,可以存储在例如存储器728中,这样的程序模块742包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块742通常执行本发明所描述的实施例中的功能和/或方法。

设备712也可以与一个或多个外部设备714(例如键盘、指向设备、显示器724等)通信,还可与一个或者多个使得用户能与该设备712交互的设备通信,和/或与使得该设备712能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口722进行。并且,设备712还可以通过网络适配器720与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器720通过总线718与设备712的其它模块通信。应当明白,尽管图7中未示出,可以结合设备712使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。

处理单元716通过运行存储在系统存储器728中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的可移动金融设备的安全认证方法。

也即,所述处理单元执行所述程序时实现:接收强制升级信号,并判断所述强制升级信号是否有效;其中,所述强制升级信号为:当终端检测到应用固件运行发生损坏时,控制信号发送装置发送的信号;若是,且接收到由所述应用固件向所述bootloader跳转的命令,检测是否接收到所述应用固件升级的请求;若是,接收所述应用固件的升级包,并根据所述升级包对所述应用固件进行升级。

本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例提供的固件升级方法:

也即,该程序被处理器执行时实现:接收强制升级的信号,并判断所述强制升级信号是否有效;其中,所述强制升级信号为:当终端检测到应用固件运行发生损坏时,控制信号发送装置发送的信号;若是,且接收到由所述应用固件向所述bootloader跳转的命令,检测是否接收到所述应用固件升级的请求;若是,接收所述应用固件的升级包,并根据所述升级包对所述应用固件进行升级。

可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。

计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。

计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、rf等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如”c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1