一种固件升级方法、系统、可读存储介质及终端设备与流程

文档序号:20080927发布日期:2020-03-10 10:38阅读:148来源:国知局
一种固件升级方法、系统、可读存储介质及终端设备与流程

本申请属于通信技术领域,尤其涉及一种固件升级方法、系统、计算机可读存储介质及终端设备。



背景技术:

随着电子技术的更新迭代,设备中的固件需要经常进行升级更新。目前常用的升级方法是:通过传统的串口等硬件方式与设备连接,并通过人工将升级固件更新至设备或者设备的芯片中;或者使用服务器或者终端设备通过网关更新升级固件至设备中。而通过人工进行固件升级或者使用服务器或者终端设备通过网关进行固件升级的方式存在升级效率较低的问题。



技术实现要素:

本申请实施例提供了一种固件升级方法、系统、计算机可读存储介质及终端设备,可以解决现有固件升级方法中升级效率较低的问题。

第一方面,本申请实施例提供了一种固件升级方法,包括:

在接收到固件升级请求时,根据所述固件升级请求获取各待升级设备和各所述待升级设备对应的设备信息,其中,各所述待升级设备为设备类型相同的物理设备;

根据leach算法构建各所述待升级设备对应的设备簇,并建立终端设备与所述设备簇之间的自组网,所述设备簇为以所述设备类型的物理设备为父节点、并以各所述待升级设备为子节点的拓扑结构;

根据所述设备簇和各所述待升级设备对应的设备信息确定所述终端设备中与各所述待升级设备对应的目标升级固件;

通过所述自组网将各所述目标升级固件发送至所述设备簇,以对所述设备簇中的各所述待升级设备进行固件升级。

在第一方面的一种可能的实现方式中,所述根据所述设备簇和各所述待升级设备对应的设备信息确定所述终端设备中与各所述待升级设备对应的目标升级固件,包括:

根据所述设备簇确定各所述待升级设备对应的目标固件簇;

基于各所述待升级设备对应的设备信息确定各所述待升级设备对应的目标版本类型;

根据各所述待升级设备对应的目标版本类型确定所述目标固件簇中与各所述待升级设备对应的目标升级固件。

可选地,在根据所述设备簇确定各所述待升级设备对应的目标固件簇之前,包括:

获取各升级固件和各所述升级固件对应的设备类型;

根据各所述升级固件对应的设备类型对各所述升级固件进行分类,得到多个分类组,每一分类组的升级固件具有相同的设备类型;

确定各所述分类组的升级固件对应的版本类型,并根据各所述分类组的升级固件对应的设备类型和版本类型构建各所述分类组对应的固件簇,所述固件簇为以所述分类组的升级固件对应的设备类型和版本类型为节点的固件拓扑图。

在第一方面的一种可能的实现方式中,所述通过所述自组网将各所述目标升级固件发送至所述设备簇,包括:

对所述目标升级固件进行分包处理,得到所述目标升级固件对应的多个升级包;

通过所述自组网将所述多个升级包利用多线程并行方式发送至所述设备簇。

可选地,在通过所述自组网将各所述目标升级固件发送至所述设备簇,以对所述设备簇中的各所述待升级设备进行固件升级之后,包括:

获取各所述待升级设备的升级状态,并在所述终端设备的显示界面中显示各所述待升级设备的升级状态。

在第一方面的一种可能的实现方式中,所述根据所述固件升级请求获取各待升级设备和各所述待升级设备对应的设备信息包括:

根据所述固件升级请求对应的目标版本类型确定所述固件升级请求对应的目标网关;

通过所述目标网关获取所述固件升级请求对应的各所述待升级设备;

扫描各所述待升级设备的二维码信息,根据各所述待升级设备的二维码信息获取各所述待升级设备对应的设备信息。

在第一方面的另一种可能的实现方式中,在通过所述自组网将各所述目标升级固件发送至所述设备簇,以对所述设备簇中的各所述待升级设备进行固件升级之后,包括:

断开所述终端设备与所述设备簇之间的自组网,并将所述设备簇的各所述待升级设备连接至所述目标网关。

第二方面,本申请实施例提供了一种固件升级系统,包括:

设备信息获取模块,用于在接收到固件升级请求时,根据所述固件升级请求获取各待升级设备和各所述待升级设备对应的设备信息,其中,各所述待升级设备为设备类型相同的物理设备;

自组网建立模块,用于根据leach算法构建各所述待升级设备对应的设备簇,并建立终端设备与所述设备簇之间的自组网,所述设备簇为以所述设备类型的物理设备为父节点、并以各所述待升级设备为子节点的拓扑结构;

目标升级固件确定模块,用于根据所述设备簇和各所述待升级设备对应的设备信息确定所述终端设备中与各所述待升级设备对应的目标升级固件;

目标升级固件发送模块,用于通过所述自组网将各所述目标升级固件发送至所述设备簇,以对所述设备簇中的各所述待升级设备进行固件升级。

第三方面,本申请实施例提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面中任一项所述的固件升级方法。

第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面中任一项所述的固件升级方法。

第五方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述第一方面中任一项所述的固件升级方法。

本申请实施例与现有技术相比存在的有益效果是:

本申请实施例中,在接收到固件升级请求时,可首先根据所述固件升级请求获取各待升级设备和各所述待升级设备对应的设备信息,其中,各所述待升级设备为设备类型相同的物理设备;随后可根据leach算法构建各所述待升级设备对应的设备簇,并建立终端设备与所述设备簇之间的自组网,所述设备簇为以所述设备类型的物理设备为父节点、并以各所述待升级设备为子节点的拓扑结构;根据所述设备簇和各所述待升级设备对应的设备信息确定所述终端设备中与各所述待升级设备对应的目标升级固件;通过所述自组网将各所述目标升级固件发送至所述设备簇,以对所述设备簇中的各所述待升级设备进行固件升级。本申请实施例可首先确定固件升级请求对应的待升级设备,随后,可构建待升级设备对应的设备簇,并可建立设备簇与终端设备之间的自组网,从而使得终端设备可通过自组网通信向设备簇中的各待升级设备发送对应的目标升级固件,实现升级固件的点对点传输,提高固件的升级效率和升级可靠性。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是本申请一实施例提供的固件升级系统的系统示意图;

图1a是本申请一实施例构建的固件簇的示意图;

图2是本申请一实施例提供的固件升级方法的流程示意图;

图2a是本申请一实施例提供的固件升级方法确定出的网关拓扑图;

图2b是本申请一实施例提供的固件升级方法构建的设备簇的示意图;

图3是本申请一实施例提供的固件升级方法在一个应用场景下确定目标升级固件的流程示意图;

图4是本申请一实施例提供的固件升级方法在一个应用场景下构建固件簇的流程示意图;

图5是本申请实施例提供的固件升级系统的结构示意图;

图6是本申请实施例提供的终端设备的结构示意图。

具体实施方式

以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。

应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。

还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。

如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。

另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。

如图1所示,本申请实施例提供了一种固件升级系统,所述固件升级系统可以包括研发工作平台10、终端设备11和物理设备12。所述研发工作平台10可以包括固件生成装置101和固件分簇装置102,所述固件生成装置101用于编译软件程序以生成升级固件,并可根据升级固件对应的固件信息对升级固件进行命名,其中,命名格式可以为:版本类型+设备类型+日期+版本号,所述版本类型可以包括实施阶段版本、软硬联调阶段版本和测试阶段版本等。所述固件分簇装置102用于对所生成的升级固件进行分类,具体地,所述固件分簇装置102可以根据升级固件对应的设备类型对升级固件进行分类,即可将设备类型相同的升级固件划分至同一分类组中,并可以构建每一分类组对应的固件簇,即在每一分类组中构建以该分类组对应的设备类型和版本类型为节点的固件拓扑图。例如,在一个具体应用场景中,分类组a中的升级固件对应的设备类型为传感器,而传感器又具体可以包括为烟感传感器、温湿度传感器和可燃气体传感器等子设备类型,且所述烟感传感器、温湿度传感器和可燃气体传感器对应的升级固件的版本类型均可以包括实施阶段版本、软硬联调阶段版本和测试阶段版本,则针对分类组a可构建出如图1a所示的固件簇。

在此,所述固件分簇装置102在完成固件簇的构建后,可以将所构建的固件簇传输至所述终端设备11,例如,所述固件分簇装置102可以通过蓝牙或者其他2.4g无线通信将所构建的固件簇传输至所述终端设备11。所述终端设备11则可以接收并存储各固件簇,即可将各升级固件按照固件簇的构建方式存储至所述终端设备11的存储装置110中,以在需要对任意一个或者多个物理设备12进行固件升级时,可根据固件簇的构建方式从所述存储装置110中快速匹配出目标升级固件并发送至待升级的物理设备12,例如可利用所述终端设备11中的类型匹配协调装置111从所述存储装置110中快速匹配出目标升级固件。

应理解,所述终端设备11还可以包括固件管理界面112,用户可以通过所述固件管理界面112进行固件的管理,例如进行固件的可视化查找、添加、删除、修改以及分类管理等,或者进行已自动分类好的固件操作的查看(如进行每种固件的下载日期、操作的用户名、下载次数统计、成功次数统计、失败次数统计和下载失败的log信息的查看)等,用户还可以通过所述固件管理界面112进行用户读写权限的增删查改等操作。

需要说明的是,用户还可以通过所述固件管理界面112进行固件升级请求的发送,所述终端设备11则可以通过通信装置113将所述固件升级请求发送至所述固件升级请求对应的目标网关13,所述目标网关13与所述终端设备11以及对应的物理设备12连接。所述目标网关13即可以确定所述固件升级请求对应的各待升级设备,所述待升级设备为与所述目标网关连接的物理设备12中的一个或者多个,并可以通过所述目标网关13中的设备类型分簇装置131根据leach算法构建待升级设备对应的设备簇,所述设备簇为以该设备类型的物理设备为父节点、并以各待升级设备为子节点的拓扑结构,例如所述父节点可以为与各待升级设备的设备类型相同的某一预设物理设备,也可以为各待升级设备中的任一物理设备。同时所述目标网关13还可以通过自组网通信装置132建立所述设备簇中父节点与子节点之间的自组网以及建立所述终端设备11与所述设备簇之间的自组网,以实现所述终端设备11与所述设备簇之间的自组网通信,使得所述终端设备11可通过自组网通信向所述设备簇中的各所述待升级设备发送升级固件,实现升级固件的点对点传输,提高固件的升级效率和升级可靠性。

在此,所述固件升级系统还可以包括二维码生成装置,所述二维码生成装置可根据各物理设备对应的版本类型、固件信息和设备信息等生成各物理设备对应的二维码,并可将所生成的二维码附加至各物理设备中,如可通过打印或者丝印的方式将各二维码附加至对应的物理设备中,以使得在扫描某一物理设备的二维码时,可自动显示该物理设备所对应的版本类型、固件信息和设备信息等,方便查看。

如图2所示,本申请实施例提供了一种固件升级方法,所述固件升级方法可以应用于上述的固件升级系统中,所述固件升级方法包括:

步骤s201、在接收到固件升级请求时,根据所述固件升级请求获取各待升级设备和各所述待升级设备对应的设备信息,其中,各所述待升级设备为设备类型相同的物理设备;

应理解,当用户需要进行固件升级时,用户可以向所述固件升级系统发送固件升级请求,例如,可以通过所述固件升级系统的终端设备中的固件管理界面发送所述固件升级请求,所述固件升级请求中可携带有需要进行固件升级的目标设备类型和目标版本类型,其中,所述目标设备类型为设备类型中的任一种,所述目标版本类型为版本类型中的任一种,如所述目标版本类型可以为实施阶段版本、软硬联调阶段版本和测试阶段版本中的任一种。所述固件升级系统即可以根据所述目标设备类型和所述目标版本类型获取待升级设备和各所述待升级设备对应的设备信息。

具体地,所述固件升级系统可首先根据所述固件升级请求对应的目标版本类型确定所述固件升级请求对应的目标网关;随后,可通过所述目标网关获取所述固件升级请求对应的各所述待升级设备,即获取与所述目标网关连接的物理设备中与所述目标设备类型相同的物理设备来作为所述固件升级请求对应的各所述待升级设备;最后,可扫描各所述待升级设备的二维码信息,以根据各所述待升级设备的二维码信息获取各所述待升级设备对应的设备信息,所述设备信息可以包括待升级设备对应的设备id等。

步骤s202、根据leach算法构建各所述待升级设备对应的设备簇,并建立终端设备与所述设备簇之间的自组网,所述设备簇为以所述设备类型的物理设备为父节点、并以各所述待升级设备为子节点的拓扑结构;

在此,所述固件升级系统获取到各所述待升级设备后,可以构建所述待升级设备对应的设备簇,并可建立所述终端设备与所述设备簇之间的自组网。具体地,所述固件升级系统可以通过所述目标网关中的设备类型分簇装置构建所述待升级设备对应的设备簇,并可通过自组网通信装置来建立所述设备簇之间的自组网以及建立所述终端设备与所述设备簇之间的自组网,即建立所述设备簇中父节点与子节点之间的自组网以及建立所述终端设备与所述设备簇中的父节点之间的自组网。

例如,在一具体应用场景中,根据所述固件升级请求确定出的目标网关及目标网关与物理设备之前的网关拓扑图可如图2a所示,且根据所述固件升级请求确定出需要进行固件升级的目标设备类型为烟感传感器,则可通过所述目标网关确定出所述待升级设备为烟感a、烟感b和烟感c,此时,所述固件升级系统则可以通过所述目标网关中的设备类型分簇装置构建出烟感a、烟感b和烟感c对应的设备簇如图2b所示,并可通过自组网通信装置建立父节点烟感与烟感a、烟感b和烟感c之间的自组网,以及建立父节点烟感与所述终端设备之间的自组网。

leach(lowenergyadaptiveclusteringhierarchy)算法是一种自应分簇拓扑算法,它的执行过程是周期性的,每轮循环分为簇的建立阶段和稳定的数据通信阶段。在簇的建立阶段,相邻节点动态地形成簇,随机产生簇头,在数据通信阶段,簇内节点把数据发送给簇头,簇头进行数据融合并把结果发送给汇聚节点。

步骤s203、根据所述设备簇和各所述待升级设备对应的设备信息确定所述终端设备中与各所述待升级设备对应的目标升级固件;

应理解,在构建出所述待升级设备对应的设备簇后,所述固件升级系统则可根据所述设备簇和各所述待升级设备对应的设备信息确定所述终端设备中与各所述待升级设备对应的目标升级固件。

具体地,各所述待升级设备对应的设备信息可以包括各所述待升级设备对应的版本类型,如图3所示,所述根据所述设备簇和各所述待升级设备对应的设备信息确定所述终端设备中与各所述待升级设备对应的目标升级固件,可以包括:

步骤s301、根据所述设备簇确定各所述待升级设备对应的目标固件簇;

步骤s302、基于各所述待升级设备对应的设备信息确定各所述待升级设备对应的目标版本类型;

步骤s303、根据各所述待升级设备对应的目标版本类型确定所述目标固件簇中与各所述待升级设备对应的目标升级固件。

对于步骤s301至步骤s303,所述固件升级系统在构建出所述待升级设备对应的设备簇后,则可以根据所述设备簇确定出各所述待升级设备对应的目标固件簇,具体地,所述固件升级系统可通过将所述设备簇的父节点对应的设备类型与所述终端设备中固件簇的父节点(即设备类型)进行匹配来确定所述目标固件簇,即将固件簇中父节点与所述设备簇的父节点对应的设备类型相匹配的固件簇确定为所述目标固件簇。在确定出所述待升级设备对应的目标固件簇后,所述固件升级系统即可基于各所述待升级设备对应的设备信息确定各所述待升级设备对应的目标版本类型,具体地,可以根据所述待升级设备对应的版本类型确定所述待升级设备对应的目标版本类型。例如,当所述待升级设备对应的版本类型为实施阶段版本时,则可确定所述待升级设备对应的目标版本类型为实施阶段版本;而当所述待升级设备对应的版本类型为软硬联调阶段版本时,则可确定所述待升级设备对应的目标版本类型为软硬联调阶段版本。所述固件升级系统在确定出所述待升级设备对应的目标版本类型后,即可根据所述目标版本类型确定所述目标固件簇中与各所述待升级设备对应的目标升级固件。

在一些实施例中,在leach算法的周期执行过程中,每个循环的数据通信阶段完成一个子节点的固件传输,并进行子节点的固件升级,然后在已经完成固件升级的子节点中按照leach算法选取父节点,如此循环直至所有子节点完成固件升级。这样可以避免当有父节点因为固件升级而使簇内节点失去连接的问题。

在一些实施例中,如图4所示,在根据所述设备簇确定各所述待升级设备对应的目标固件簇之前,可以包括:

步骤s401、获取各升级固件和各所述升级固件对应的设备类型;

步骤s402、根据各所述升级固件对应的设备类型对各所述升级固件进行分类,得到多个分类组,每一分类组的升级固件具有相同的设备类型;

步骤s403、确定各所述分类组的升级固件对应的版本类型,并根据各所述分类组的升级固件对应的设备类型和版本类型构建各所述分类组对应的固件簇,所述固件簇为以所述分类组的升级固件对应的设备类型和版本类型为节点的固件拓扑图。

对于上述步骤s401至步骤s403,所述固件升级系统可首先获取各升级固件和各升级固件对应的设备类型,例如,可以通过所述固件升级系统的研发工作平台中的固件生成装置编译软件程序来生成得到各升级固件,并可以根据所得到的各所述升级固件的固件名称来获取各所述升级固件对应的设备类型,其中,各所述升级固件对应的设备类型是指各所述升级固件所应用的物理设备的设备类型;随后,所述固件升级系统则可以根据各所述升级固件对应的设备类型对各所述升级固件进行分类,如可以通过所述固件升级系统中的固件分簇装置来对各所述升级固件进行分类,即可将设备类型相同的升级固件划分至同一分类组,以此得到多个分类组,并可构建每一分类组对应的固件簇,即在每一分类组中构建以该分类组对应的设备类型和版本类型为节点的固件拓扑图。应理解,在构建出各所述固件簇后,所述固件升级系统即可以将各所述固件簇存储至所述终端设备中。

步骤s204、通过所述自组网将各所述目标升级固件发送至所述设备簇,以对所述设备簇中的各所述待升级设备进行固件升级。

在此,所述固件升级系统在确定出所述终端设备中与各所述待升级设备对应的目标升级固件后,则可指示所述终端设备通过自组网将各所述目标升级固件发送至所述设备簇,即将各所述目标升级固件分别发送至所述设备簇中的父节点,再由父节点通过所述设备簇中的自组网将各所述目标升级固件分别发送至各子节点(即各所述待升级设备),各所述待升级设备接收到所对应的目标升级固件后,可根据升级指令进行固件升级。

可选地,所述通过所述自组网将各所述目标升级固件发送至所述设备簇可以包括:对所述目标升级固件进行分包处理,得到所述目标升级固件对应的多个升级包;通过所述自组网将所述多个升级包利用多线程并行方式发送至所述设备簇,以通过分包和多线程并行方式来提高升级固件的传输效率,从而提高固件的升级效率。

在一些实施例中,在通过所述自组网将各所述目标升级固件发送至所述设备簇,以对所述设备簇中的各所述待升级设备进行固件升级之后,可包括:获取各所述待升级设备的升级状态,并在所述终端设备的显示界面中显示各所述待升级设备的升级状态。

应理解,在各所述待升级设备进行固件升级的过程中,各所述待升级设备可将各所述待升级设备对应的升级状态发送至所述固件升级系统,所述固件升级系统则可以将各所述待升级设备的升级状态显示于所述固件升级系统的终端设备的显示界面中,以方便用户实时了解各所述待升级设备的升级进度以及具体升级情况等。

在一种可能的实现方式中,在通过所述自组网将各所述目标升级固件发送至所述设备簇,以对所述设备簇中的各所述待升级设备进行固件升级之后,还可包括:断开所述终端设备与所述设备簇之间的自组网,并将所述设备簇的各所述待升级设备连接至所述目标网关。在此,所述固件升级系统在根据各所述待升级设备的升级状态确定各所述待升级设备均升级完成后,所述固件升级系统即可断开所述终端设备与所述设备簇之间的自组网,并可重新将所述设备簇中的各所述待升级设备连接至所对应的目标网关,以在未进行固件升级时重新通过目标网关来实现物理设备与终端设备之间的通信。

本申请实施例中,在接收到固件升级请求时,可首先根据所述固件升级请求获取各待升级设备和各所述待升级设备对应的设备信息,其中,各所述待升级设备为设备类型相同的物理设备;随后可根据leach算法构建各所述待升级设备对应的设备簇,并建立终端设备与所述设备簇之间的自组网,所述设备簇为以所述设备类型的物理设备为父节点、并以各所述待升级设备为子节点的拓扑结构;根据所述设备簇和各所述待升级设备对应的设备信息确定所述终端设备中与各所述待升级设备对应的目标升级固件;通过所述自组网将各所述目标升级固件发送至所述设备簇,以对所述设备簇中的各所述待升级设备进行固件升级。本申请实施例可首先确定固件升级请求对应的待升级设备,随后,可构建待升级设备对应的设备簇,并可建立设备簇与终端设备之间的自组网,从而使得终端设备可通过自组网通信向设备簇中的各待升级设备发送对应的目标升级固件,实现升级固件的点对点传输,提高固件的升级效率和升级可靠性。

应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。

对应于上文实施例所述的固件升级方法,图5示出了本申请实施例提供的固件升级系统的结构框图,为了便于说明,仅示出了与本申请实施例相关的部分。

参照图5,所述固件升级系统,可以包括:

设备信息获取模块501,用于在接收到固件升级请求时,根据所述固件升级请求获取各待升级设备和各所述待升级设备对应的设备信息,其中,各所述待升级设备为设备类型相同的物理设备;

自组网建立模块502,用于根据leach算法构建各所述待升级设备对应的设备簇,并建立终端设备与所述设备簇之间的自组网,所述设备簇为以所述设备类型的物理设备为父节点、并以各所述待升级设备为子节点的拓扑结构;

目标升级固件确定模块503,用于根据所述设备簇和各所述待升级设备对应的设备信息确定所述终端设备中与各所述待升级设备对应的目标升级固件;

目标升级固件发送模块504,用于通过所述自组网将各所述目标升级固件发送至所述设备簇,以对所述设备簇中的各所述待升级设备进行固件升级。

可选地,所述目标升级固件确定模块503,可以包括:

目标固件簇确定单元,用于根据所述设备簇确定各所述待升级设备对应的目标固件簇;

目标版本类型确定单元,用于基于各所述待升级设备对应的设备信息确定各所述待升级设备对应的目标版本类型;

目标升级固件确定单元,用于根据各所述待升级设备对应的目标版本类型确定所述目标固件簇中与各所述待升级设备对应的目标升级固件。

在一种可能的实现方式中,所述固件升级系统,还可以包括:

升级固件获取模块,用于获取各升级固件和各所述升级固件对应的设备类型;

升级固件分类模块,用于根据各所述升级固件对应的设备类型对各所述升级固件进行分类,得到多个分类组,每一分类组的升级固件具有相同的设备类型;

固件簇构建模块,用于确定各所述分类组的升级固件对应的版本类型,并根据各所述分类组的升级固件对应的设备类型和版本类型构建各所述分类组对应的固件簇,所述固件簇为以所述分类组的升级固件对应的设备类型和版本类型为节点的固件拓扑图。

可选地,所述目标升级固件发送模块504,可以包括:

分包单元,用于对所述目标升级固件进行分包处理,得到所述目标升级固件对应的多个升级包;

发送单元,用于通过所述自组网将所述多个升级包利用多线程并行方式发送至所述设备簇。

在一种可能的实现方式中,所述固件升级系统,还可以包括:

升级状态获取模块,用于获取各所述待升级设备的升级状态,并在所述终端设备的显示界面中显示各所述待升级设备的升级状态。

可选地,所述设备信息获取模块501,可以包括:

目标网关确定单元,用于根据所述固件升级请求对应的目标版本类型确定所述固件升级请求对应的目标网关;

待升级设备获取单元,用于通过所述目标网关获取所述固件升级请求对应的各所述待升级设备;

设备信息获取单元,用于扫描各所述待升级设备的二维码信息,根据各所述待升级设备的二维码信息获取各所述待升级设备对应的设备信息。

在一种可能的实现方式中,所述固件升级系统,还可以包括:

断开模块,用于断开所述终端设备与所述设备簇之间的自组网,并将所述设备簇的各所述待升级设备连接至所述目标网关。

需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

图6为本申请一实施例提供的终端设备的结构示意图。如图6所示,该实施例的终端设备6包括:至少一个处理器60(图6中仅示出一个)处理器、存储器61以及存储在所述存储器61中并可在所述至少一个处理器60上运行的计算机程序62,所述处理器60执行所述计算机程序62时实现上述任意各个固件升级方法实施例中的步骤。

所述终端设备6可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。该终端设备可包括,但不仅限于,处理器60、存储器61。本领域技术人员可以理解,图6仅仅是终端设备6的举例,并不构成对终端设备6的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括输入输出设备、网络接入设备等。

所称处理器60可以是中央处理单元(centralprocessingunit,cpu),该处理器60还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

所述存储器61在一些实施例中可以是所述终端设备6的内部存储单元,例如终端设备6的硬盘或内存。所述存储器61在另一些实施例中也可以是所述终端设备6的外部存储设备,例如所述终端设备6上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,所述存储器61还可以既包括所述终端设备6的内部存储单元也包括外部存储设备。所述存储器61用于存储操作系统、应用程序、引导装载程序(bootloader)、数据以及其他程序等,例如所述计算机程序的程序代码等。所述存储器61还可以用于暂时地存储已经输出或者将要输出的数据。

本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。

本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行时实现可实现上述各个方法实施例中的步骤。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到拍照装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、电载波信号、电信信号以及软件分发介质。例如u盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

在本申请所提供的实施例中,应该理解到,所揭露的装置/网络设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/网络设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

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