边缘计算装置的程序更新方法及更新装置与流程

文档序号:24305205发布日期:2021-03-17 00:57阅读:135来源:国知局
边缘计算装置的程序更新方法及更新装置与流程

本申请涉及程序更新技术领域,特别涉及一种边缘计算装置的程序更新方法及更新装置。



背景技术:

目前,边缘计算表示在现场提供计算能力,以高速、低延迟、低对外数据流量解决问题的方法。边缘计算节点一般是一台工业电脑、一台服务器、一个边缘网关、或者设备上一个具有一定计算能力的硬件软件系统,如解决流水线的自动运行、流水线上图像的识别、设备运行参数的自动诊断、设备自主化运行等问题。

具体而言:在本地(如一个厂房、一片小区域或者一台设备上)采集计算数据并计算,从而把计算得到的结果传输到远程服务器或者其他客户端,以接收远程服务器或者其他客户端基于计算结果产生的动作控制信号,不但对外连接不要求高质量、高可靠性,而且延迟低、耗费流量少,部署灵活方便。

然而,当边缘计算节点的硬件配置不够高、不支持多核并行运算时,访问一个边缘计算节点意味着影响其本身的程序运行,可能干扰其正常运行。另外,访问的方式一般是通过网络的、或者通过本地的:通过网络访问有可能连接中断,导致信息传输不完全;本地访问有可能意味着重新烧写全部程序,需要中断它的运行,且可能影响边缘计算节点的运行稳定性,亟需改进。

申请内容

本发明旨在至少在一定程度上解决相关技术中的技术问题之一。

为此,本发明的第一目的在于提出一种边缘计算装置的程序更新方法,该方法解决了相关技术中在给边缘计算节点更新程序时,可能需要重启、停机,且更新后的程序无法在保留当前运行状态的情况下进行切换的问题,实现了不停机更新功能块。

本发明的第二个目的在于提出一种边缘计算装置的程序更新装置。

本发明的第三个目的在于提出一种电子设备。

本发明的第四个目的在于提出一种计算机可读存储介质。

为达到上述目的,本申请第一方面实施例提供一种边缘计算装置的程序更新方法,包括以下步骤:

接收服务端发送的更新包,并由所述更新包生成更新功能块;

判断所述更新功能块的第一标识与当前运行功能块的第二标识是否匹配;

若所述第一标识与所述第二标识匹配,并符合校验规则,则在运行下一运行功能块时,根据所述更新功能块更新所述当前运行功能块,否则,存储所述更新功能能块。

根据本申请实施例的边缘计算装置的程序更新方法,可以接收服务端发送的更新包,并由更新包生成更新功能块,并在更新功能块的第一标识与当前运行功能块的第二标识时,并在运行下一运行功能块时,根据更新功能块更新当前运行功能块,否则,存储更新功能能块。由此,解决了相关技术中在给边缘计算节点更新程序时,可能需要重启、停机,且更新后的程序无法在保留当前运行状态的情况下进行切换的问题,实现了不停机更新功能块。

另外,根据本发明上述实施例的边缘计算装置的程序更新方法还可以具有以下附加的技术特征:

可选地,所述存储所述更新功能块,包括:

在所述第一标识检测到已有时,获取当前存储空间链表;

判断所述当前存储空间链表是否满足存储条件;

如果所述当前存储空间链表满足所述存储条件,则释放多余的存储空间;

如果所述当前存储空间链表的长度不满足所述存储条件,则根据所述更新功能块的逻辑寻找满足剩余长度的新的地址,并将寻找到的存储空间链表追加到所述当前存储空间链表中。

可选地,在接收所述更新包之前,还包括:

将边缘节点的每个事务按照流程类型分为至少一个运行功能块,其中,每个运行功能块包括依次排列的多个信息体;

根据所述每个运行功能块的多个信息体确定所述每个功能块的运行优先级,以依序运行于运行环境中。

可选地,在判定所述第一标识与所述第二标识匹配之后,还包括:

通过在功能块内插入前后以跳转指令封闭的不被解析的无意义代码片段,且在整个功能块的二进制码流经过哈希操作后,满足预设的的正则表达式定义的校验规则。

为达到上述目的,本申请第二方面实施例提供一种边缘计算装置的程序更新装置,包括:

生成模块,用于接收服务端发送的更新包,并由所述更新包生成更新功能块;

判断模块,用于判断所述更新功能块的第一标识与当前运行功能块的第二标识是否匹配;

处理模块,用于如果所述第一标识与所述第二标识匹配,并符合校验规则,则在运行下一运行功能块时,根据所述更新功能块更新所述当前运行功能块,否则,存储所述更新功能能块。

根据本申请实施例的边缘计算装置的程序更新装置,可以接收服务端发送的更新包,并由更新包生成更新功能块,并在更新功能块的第一标识与当前运行功能块的第二标识时,并在运行下一运行功能块时,根据更新功能块更新当前运行功能块,否则,存储更新功能能块。由此,解决了相关技术中在给边缘计算节点更新程序时,可能需要重启、停机,且更新后的程序无法在保留当前运行状态的情况下进行切换的问题,实现了不停机更新功能块。

可选地,所述处理模块,包括:

获取单元,用于在所述第一标识检测到已有时,获取当前存储空间链表;

判断单元,用于判断所述当前存储空间链表是否满足存储条件;

释放单元,用于在所述当前存储空间链表满足所述存储条件时,释放多余的存储空间;

寻找单元,用于在所述当前存储空间链表的长度不满足所述存储条件时,根据所述更新功能块的逻辑寻找满足剩余长度的新的地址,并将寻找到的存储空间链表追加到所述当前存储空间链表中。

可选地,在接收所述更新包之前,所述生成模块,还包括:

划分单元,用于将边缘节点的每个事务按照流程类型分为至少一个运行功能块,其中,每个运行功能块包括依次排列的多个信息体;

确定单元,用于根据所述每个运行功能块的多个信息体确定所述每个功能块的运行优先级,以依序运行于运行环境中。

可选地,所述处理模块还用于在判定所述第一标识与所述第二标识匹配之后,通过在功能块内插入前后以跳转指令封闭的不被解析的无意义代码片段,且在整个功能块的二进制码流经过哈希操作后,满足预设的的正则表达式定义的校验规则。

为达到上述目的,本申请第三方面实施例提供一种电子设备,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被设置为用于执行如上述实施例所述的边缘计算装置的程序更新方法。

为达到上述目的,本申请第四方面实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上述实施例所述的边缘计算装置的程序更新方法。

本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。

附图说明

本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:

图1为根据本申请实施例提供的一种边缘计算装置的程序更新方法的流程图;

图2为根据本申请一个具体实施例的边缘计算装置的程序更新方法的流程图;

图3为根据本申请一个具体实施例对应的边缘计算装置的程序更新装置的模块的示例图;

图4为根据本申请一个实施例程序包接收模块所接收的数据格式与互动逻辑示意图;

图5为根据本申请一个实施例的边缘节点划分功能块的示意图;

图6为根据本申请一个实施例的功能块内信息体的示例图;

图7为根据本申请一个实施例的存储更新功能能块的流程图;

图8为根据本申请一个实施例功能块头的定义示意图;

图9为根据本申请一个实施例的生成符合校验规则的功能块的流程图;

图10为根据本申请一个实施例的校验功能块是否符合校验规则的流程图;

图11为根据本申请实施例的边缘计算装置的程序更新装置的示例图;

图12为本申请实施例提供的电子设备的结构示意图。

具体实施方式

下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。

下面描述根据本发明实施例提出的边缘计算装置的程序更新方法及更新装置之前,先来简单描述一下相关技术中的缺陷。

目前,在相关技术中,存在下述三种方法进行边缘计算装置的程序更新:

方法一:边缘节点停机、相关设备停机后,使用本地编程数据线重新烧写全部程序。

方法二:进入保护模式,只执行网络访问功能,通过网络更新程序。相当于存储空间中有一个“更新程序”,还有一个“运行区”,每次需要更新时,从运行区进入“更新程序”,然后开始通过网络接收信息、把接收到的信息覆盖到“运行区”。当网络异常导致程序传输失败时,重新开始更新过程。更新完毕后重启动边缘节点。

方法三:在程序内部设置两块区域,采用双镜像启动(dual-imageboot)。例如我们将两个镜像称为a、b镜像。如果该次启动使用a镜像,那么更新程序时、逐次更新到b镜像,最后在b镜像的开始或结尾处写入一个校验码和时间戳。每次启动时,检查两个镜像谁的校验码正确、以及时间戳更新。如果只有一个镜像的校验码正确,那就运行校验码正确的那个;如果两个镜像的校验码都正确,则运行时间戳最新的那个。但是在启动后,就不选择镜像——因为两个镜像的切换意味着重启,可能会让某些正在运行的逻辑(例如流水线自动控制、设备运行状态监控)重新初始化,带来意想不到的后果。

然而,上述三种程序更新方法分别存在以下缺陷:

方法一:需要让边缘节点进入编程模式、需要携带编程线缆。由于产品知识产权保护的原因,一般单片机内的程序在出厂时都会迫使其无法进入编程模式,否则可能可以让未授权者直接读取其存储空间的内容。如果要让边缘节点进入编程模式,可能需要打开其外壳、通过一些跳线更改其启动模式,这个操作十分麻烦。在工业现场使用编程线缆困难较大,现场可能有危险、有电磁干扰等情况,导致人员无法接近边缘节点、对其停机,并烧写程序。

方法二:让边缘节点从正常运行的程序中跳出,开始执行更新程序,后果是正常的程序被停止,可能意味着流水线停机、设备停机、或者既定的计算功能无法执行。对于工业现场,设备的不停机维护是非常重要的。

方法三:边缘节点在更新的过程中无需停机,但是需要在更新完毕后重启以开始运行新的程序,另外系统中同时存在的两个镜像意味着存储空间的使用率只有50%。边缘节点重启意味着丢失当前的运行状态,因为工业控制的逻辑都需要从初始化开始按步骤执行。所以重启操作意味着和这台边缘节点相关的设备都需要重新一同初始化,对于某些特定的设备——例如流水线、流程设备——重新初始化非常耗时。

本申请正是基于上述问题,而提出了一种边缘计算装置的程序更新方法和边缘计算装置的程序更新装置。

下面参照附图描述根据本发明实施例提出的边缘计算装置的程序更新方法及更新装置,首先将参照附图描述根据本发明实施例提出的边缘计算装置的程序更新方法。

具体而言,图1为本申请实施例所提供的一种边缘计算装置的程序更新方法的流程示意图。

结合图1和图2所示,该边缘计算装置的程序更新方法包括以下步骤:

在步骤s101中,接收服务端发送的更新包,并由更新包生成更新功能块。

可以理解的是,如图3所示,本申请实施例边缘节点内的运行的程序可以由多个模块构成,例如,由程序包接收模块、存储访问模块、更新决断模块、调度模块、存储管理模块和运行模块等多个模块构成,本申请实施例可以通过程序包接收模块接收服务端通过uart((universalasynchronousreceiver/transmitter,通用异步收发传输器)接口,或者i2c(inter-integratedcircuit,i2c总线)接口,或者其他接口发送的更新包,并由更新包生成更新功能块,程序包接收模块不断更新自己的先进先出缓冲区,当缓冲区内拼接到一个完整的功能块后,即将其输出给更新决断模块。程序包接收模块所接收的数据格式与互动逻辑如图4所示。在接收到结束符后,把缓冲区内容整体输出给更新决断模块。此时,缓冲区内容是一个完整的功能块。更新决断模块具有两个输入,一个输入是当前运行环境设定模块传入的序列号与完整代码片段开始指针的组合,另一个输入是程序包接收模块的输出,其也是一个完整的功能块。

可选地,在一些实施例中,如图2所示,在接收更新包之前,还包括:将边缘节点的每个事务按照流程类型分为至少一个运行功能块,其中,每个运行功能块包括依次排列的多个信息体;根据每个运行功能块的多个信息体确定每个功能块的运行优先级,以依序运行于运行环境中。

可以理解的是,如图5所示,边缘节点的各个事务可以被划分为多个“功能块”,如功能块1、功能块2、功能块3、功能块……,每个功能块意味着一个不能被打断的流程。另外,本申请实施例还可以将某个事务分解为若干个不能被打断的操作,称为若干个功能块,并且在每个功能块内,具备如图6所示的信息体。

需要说明的是,功能块内首先按照顺序保存本功能块的序列号、优先级、运行环境分类和系统设置,然后按照链表的方式存储若干个代码碎片,其中,“代码”指一段可以被运行的程序,而不是文本代码;优先级是一个无符号整数,0为最高、255为最低优先级;运行环境分类是是一个取值为0、1、2(其他数值为保留数值)的单字节无符号整数;“全部”模式表示该功能块可以使用所有系统功能、并使用系统底层接口;“保护”模式表示该功能块需要在保护模式下工作,只能通过系统给定的接口调用功能;“隔离”模式表示该功能块不能使用系统交互接口,只能利用自身信息和运行环境信息执行。

代码碎片是一段连续的存储空间。在存储空间的结尾写入下一个存储空间的起始地址。这样通过从第一个代码碎片开始不断找到下一个代码碎片,即可找到所有与此功能块相关的代码碎片,拼接成一段完整代码。

程序运行时,首先进入的是“程序运行主环境”,某一个时间点,存在多个事务、各个事务接下来要运行不同的功能块,比较功能块优先级,优先运行优先级高的功能块,如果优先级相同,则通过随机数生成器随机决定一个,使用随机数的意义在于打乱事务调度的顺序,从而让硬件资源的访问更加均匀。

决定了接下来需要运行哪个功能块后,即加载这个功能块的参数,包括它的运行环境分类、系统设置、和代码碎片组成的完整代码。通过运行环境分类和系统设置两个参数,通过当前运行环境设定模块,调整系统的状态,其中包括:

(1)、按照系统设置参数的内容设置硬件、软件参数,例如,系统的中断向量表、中间变量的数值。

(2)、按照运行环境分类参数,对系统底层接口进行屏蔽、对存储区域进行写保护,避免未经许可的调用与修改。

完成上述设定后,当前运行环境设定模块把完整代码片段的开始指针传递给更新决断模块,并附加该功能块的序列号。

在步骤s102中,判断更新功能块的第一标识与当前运行功能块的第二标识是否匹配,其中,第一标识和第二标识均可以为序列号,即判断更新功能块序列号与当前运行功能块的序列号是否匹配。

在步骤s103中,若第一标识与第二标识匹配,则在运行下一运行功能块时,根据更新功能块更新当前运行功能块,否则,存储更新功能能块。

可以理解的是,如图2所示,本申请实施例可以通过更新决断模块首先对比两个输入的序列号是否相同,如果相同,则意味着需要更新当前在运行的功能块,如果不同,则意味着要更新的功能块不是正在运行的功能块。

其中,如果要更新的功能块就是当前正在运行的功能块,则更新决断模块判断运行当前功能块、将更新任务挂起、等下一功能块运行时再更新当前的功能块。

由此,根据本申请实施例的边缘计算装置的程序更新方法,更新过程不依赖连接的qos,网络连接好、不好的情况下都可以稳定更新;并且支持边更新边运行,更新不需要暂停运行程序;同时支持只更新部分程序模块,更新后不需要重启。

进一步地,在一些实施例中,如图2所示,存储更新功能块,包括:在第一标识检测到已有时,获取当前存储空间链表;判断当前存储空间链表是否满足存储条件;如果当前存储空间链表满足存储条件,则释放多余的存储空间;如果当前存储空间链表的长度不满足存储条件,则根据更新功能块的逻辑寻找满足剩余长度的新的地址,并将寻找到的存储空间链表追加到当前存储空间链表中。

可以理解的是,如图2所示,如果要更新的功能块不是当前正在运行的功能块,则从存储访问模块中获得一段碎片化的存储空间用以存储新发来的功能块。如果新发来的功能块的序列号是已有的序列号,则更新已有的功能块,并则存储访问模块返回已有的功能块的起始地址;如果新发来的功能块的序列号不是已有的序列号,则新建功能块,并存储访问模块返回一块空白空间的存储地址。

存储访问模块寻找新的序列号(新建功能块)存储地址的逻辑是:对存储空间的每一段地址求其访问频率,按照访问频率从低到高排序,优先使用访问频率低的那个,当当前存储空间长度不够时、开始寻找新的一段,形成一个链表。

存储访问模块寻找既有的序列号(更新既有功能块)存储地址的逻辑是:首先获取既有功能块的存储空间链表,如果当前存储空间链表已经超过了要求的存储长度,则释放多余的存储空间;如果当前存储空间链表的长度小于要求的存储长度,则按照新建功能块的逻辑寻找满足余下长度的新的地址、并将获得的存储空间链表追加到既有的存储空间链表中。

获得了存储空间地址后,更新决断模块将存储空间地址、待更新的功能块、要执行的功能块的信息送入调度模块。调度模块首先将存储空间地址、待更新的功能块信息送入存储管理模块,然后将要执行的功能块信息送入运行模块。由于这里传递的都是存储空间指针,所以调度模块的执行速度非常快。

运行模块由于已经被“当前运行环境设定模块”设定了运行的变量、可调用的接口,可以安全地执行当前的功能块,执行后返回程序入口点:程序主运行环境模块。

存储管理模块接收到待更新的功能块的开始指针,和存储空间地址的开始指针及链表各节点指针,开始对功能块进行存储,其中,如图7所示,存储的逻辑可以包括以下步骤:

s701,存储功能块头。

其中,功能块头的定义可以如图8所示,其可以包括序列号(4byte)、优先级(1byte)、运行环境分类(全部/保护/隔离)(1byte)、系统设置(如中断保护)长度(2byte)、系统设置(如中断保护)内容(nbyte)等。

s702,判断余下空间剩余长度是否大于指针长度,如果是,执行步骤s603,否则,执行步骤s707。

s703,存储部分代码。

s704,在存储空间末尾保留一个指针长度。

s705,判断代码是否存储完毕,如果是,执行步骤s706,否则,执行步骤s702。

s706,结束。

s707,寻找下一空间开始地址。

s708,写入下一空间开始地址。

s709,代码碎片计数+1。

s710,将下一空间总长度作为“余下空间剩余长度”,并返回执行步骤s702。

由上可知,存储访问模块寻找既有的序列号(更新既有功能块)存储地址的逻辑是,首先获取既有功能块的存储空间链表,如果当前存储空间链表已经超过了要求的存储长度,则释放多余的存储空间;如果当前存储空间链表的长度小于要求的存储长度,则按照新建功能块的逻辑寻找满足余下长度的新的地址、并将获得的存储空间链表追加到既有的存储空间链表中。

需要说明的是,边缘节点的程序更新可以依赖多种通讯方式例如wifi(wirelessfidelity,无线保真)、lora、nb-iot(narrowbandinternetofthings,窄带物联网)等,不再依赖具体的某一技术或者依赖一些特定的网络行为(例如长连接、例如大数据包);边缘节点的程序更新不再需要通过现场编程线缆连接,同样可以更新所有内部的功能块;对存储空间利用率高,每次更新功能块时都相当于一次增量更新,只占用相当于该功能块大小的存储空间,且这一存储空间可以通过链表实现、不需要一个连续的存储空间;对功能块进行了运行环境约束,在更新程序时更加安全,绝大多数功能块都可以使用“隔离”模式运行,就算更新出现了严重异常,也不影响其他事务的执行;在功能块运行时,使用随机散列,从而让相同优先级的功能块访问硬件资源的顺序不再固定,降低了软件与硬件的耦合特征、使得硬件的利用周期更加平均、也可以对抗针对硬件特征的程序破解手段。

综上,通过在程序中引入“运行环境”的概念,并通过对代码、程序块进行调度,以及将存储资源通过链式存储改为分散存储而非整块存储,从而将程序的不同功能区分解为若干部分,每次每个功能区都被独立执行,从而在更新时,可以选择更新某个功能区,或者创建一个新的功能区。由此,可以使得某个功能区的更新不会影响到其他功能区的代码完整性,并且某个功能区更新后,下次被执行时会执行新的代码,实现无缝替换,以及某个功能区更新后,旧的代码占用的存储空间碎片被回收、供下一次更新用,从而实现存储空间的高效利用。

另外,在本申请的一个实施例中,在判定所述第一标识与所述第二标识匹配之后,还包括:通过在功能块内插入前后以跳转指令封闭的不被解析的无意义代码片段,且在整个功能块的二进制码流经过哈希操作后,满足预设的的正则表达式定义的校验规则。

具体地,校验规则,通过在功能块内插入前后以跳转指令封闭的不被解析的无意义代码片段,使整个功能块的二进制码流经过哈希操作后、满足给定的正则表达式定义的校验规则。

如图9所示,本申请实施例包括以下步骤:

步骤s901:获取给定的正则表达式规则。

步骤s902:获取完整功能块。

步骤s903:在功能块中随机选择若干位置。

步骤s904:在前后插入跳转指令,防止执行后面插入的无意义代码。

步骤s905:随机生成字符,插入位置;

步骤s906:计算哈希结果。

步骤s907:判断是否符合表达式规则,如果是,则执行步骤s908,否则执行步骤s909、步骤s908:作为封装后的符合校验的功能块输出。

步骤s909:清空既有随机字符。

进一步地,如图10所示,本申请实施例的校验功能块是否符合校验规则的步骤为:

步骤1001:获取给定的正则表达式规则。

步骤1002:获取完整功能块。

步骤1003:计算哈希结果。

步骤1004:符合正则表达式规则,如果是,则返回正确,如果否,则返回错误。

根据本申请实施例提出的边缘计算装置的程序更新方法,可以接收服务端发送的更新包,并由更新包生成更新功能块,并在更新功能块的第一标识与当前运行功能块的第二标识时,并在运行下一运行功能块时,根据更新功能块更新当前运行功能块,否则,存储更新功能能块。由此,解决了相关技术中在给边缘计算节点更新程序时,可能需要重启、停机,且更新后的程序无法在保留当前运行状态的情况下进行切换的问题,实现了不停机更新功能块。

其次参照附图描述根据本申请实施例提出的边缘计算装置的程序更新装置。

图11是本申请实施例的边缘计算装置的程序更新装置的方框示意图。

如图11所示,该边缘计算装置的程序更新装置10包括:生成模块100、判断模块200和处理模块300。

其中,生成模块100用于接收服务端发送的更新包,并由更新包生成更新功能块;

判断模块200用于判断更新功能块的第一标识与当前运行功能块的第二标识是否匹配;

处理模块300用于如果第一标识与第二标识匹配,则在运行下一运行功能块时,根据更新功能块更新当前运行功能块,否则,存储更新功能能块。

可选地,在一些实施例中,处理模块300包括:获取单元、判断单元、释放单元和寻找单元。

其中,获取单元,用于在第一标识检测到已有时,获取当前存储空间链表;

判断单元,用于判断当前存储空间链表是否满足存储条件;

释放单元,用于在当前存储空间链表满足存储条件时,释放多余的存储空间;

寻找单元,用于在当前存储空间链表的长度不满足存储条件时,根据更新功能块的逻辑寻找满足剩余长度的新的地址,并将寻找到的存储空间链表追加到当前存储空间链表中。

可选地,在一些实施例中,在接收更新包之前,生成模块100还包括:划分单元和确定单元。

其中,划分单元,用于将边缘节点的每个事务按照流程类型分为至少一个运行功能块,其中,每个运行功能块包括依次排列的多个信息体;

确定单元,用于根据每个运行功能块的多个信息体确定每个功能块的运行优先级,以依序运行于运行环境中。需要说明的是,前述对边缘计算装置的程序更新方法实施例的解释说明也适用于该实施例的边缘计算装置的程序更新装置,此处不再赘述。

根据本申请实施例提出的边缘计算装置的程序更新装置,可以接收服务端发送的更新包,并由更新包生成更新功能块,并在更新功能块的第一标识与当前运行功能块的第二标识时,并在运行下一运行功能块时,根据更新功能块更新当前运行功能块,否则,存储更新功能能块。由此,解决了相关技术中在给边缘计算节点更新程序时,可能需要重启、停机,且更新后的程序无法在保留当前运行状态的情况下进行切换的问题,实现了不停机更新功能块。

图12为本申请实施例提供的电子设备的结构示意图。该电子设备可以包括:

存储器1201、处理器1202及存储在存储器1201上并可在处理器1202上运行的计算机程序。

处理器1202执行程序时实现上述实施例中提供的边缘计算装置的程序更新方法。

进一步地,电子设备还包括:

通信接口1203,用于存储器1201和处理器1202之间的通信。

存储器1201,用于存放可在处理器1202上运行的计算机程序。

存储器1201可能包含高速ram存储器,也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。

如果存储器1201、处理器1202和通信接口1203独立实现,则通信接口1203、存储器1201和处理器1202可以通过总线相互连接并完成相互间的通信。总线可以是工业标准体系结构(industrystandardarchitecture,简称为isa)总线、外部设备互连(peripheralcomponent,简称为pci)总线或扩展工业标准体系结构(extendedindustrystandardarchitecture,简称为eisa)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图9中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

可选的,在具体实现上,如果存储器1201、处理器1202及通信接口1203,集成在一块芯片上实现,则存储器1201、处理器1202及通信接口1203可以通过内部接口完成相互间的通信。

处理器1202可能是一个中央处理器(centralprocessingunit,简称为cpu),或者是特定集成电路(applicationspecificintegratedcircuit,简称为asic),或者是被配置成实施本申请实施例的一个或多个集成电路。

本实施例还提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如上的边缘计算装置的程序更新方法。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或n个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“n个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。

流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更n个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。

在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或n个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。

应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,n个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。

本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。

此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。

上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。

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