CN110895477A - 一种设备启动方法、装置及设备 - Google Patents
一种设备启动方法、装置及设备 Download PDFInfo
- Publication number
- CN110895477A CN110895477A CN201811066867.1A CN201811066867A CN110895477A CN 110895477 A CN110895477 A CN 110895477A CN 201811066867 A CN201811066867 A CN 201811066867A CN 110895477 A CN110895477 A CN 110895477A
- Authority
- CN
- China
- Prior art keywords
- server
- firmware
- terminal device
- terminal equipment
- request
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例提供了一种设备启动方法、装置及设备,应用于终端设备,该方法包括:上电后,运行引导程序,其中,所述引导程序为:用于引导所述终端设备启动所需执行的各个引导步骤的代码程序;在运行所述引导程序过程中根据引导程序所定义的第一引导步骤,与用于向所述终端设备提供数据服务的服务器建立通信连接;从所述服务器获得启动所述终端设备所需的、与所述终端设备序列号对应的固件,并将所获取的固件存储到易失性存储器内存中;从所述易失性存储器内存中加载所获得的固件,实现设备启动。应用本发明实施例提供的方案,能够降低终端设备对闪存的需求,进而降低生产终端设备的成本。
Description
技术领域
本发明涉及计算机应用技术领域,特别是涉及一种设备启动方法、装置及设备。
背景技术
随着嵌入式技术的发展,嵌入式设备的种类越来越多,比如,常见的网络摄像机、智能电视等设备。开发人员将运行嵌入式设备所需的固件存储在嵌入式设备的闪存中,当嵌入式设备启动时,嵌入式设备加载在闪存中存储的固件,从而实现设备的正常启动。
实际应用中,运行嵌入式设备所需的固件占用的闪存空间较大,也就加大了嵌入式设备对闪存的需求,导致生产嵌入式设备的成本增加。现有技术中,可以通过对运行嵌入式设备所需的固件中包含的内容进行裁剪,以降低嵌入式设备对闪存的需求,但是,固件中包含的大部分内容通常是运行嵌入式设备所必须的,这就导致对固件裁剪到一定程度之后,很难再进行裁剪,这就使得现有技术并不能很好的降低嵌入式设备对闪存的需求。
发明内容
本发明实施例的目的在于提供一种设备启动方法、装置及设备,以实现降低嵌入式设备对闪存的需求。具体技术方案如下:
本发明实施的一方面,提供的一种设备启动方法,应用于终端设备,所述方法包括:
上电后,运行引导程序,其中,所述引导程序为:用于引导所述终端设备启动所需执行的各个引导步骤的代码程序;
根据引导程序所定义的第一引导步骤,与用于向所述终端设备提供数据服务的服务器建立通信连接;
从所述服务器获得启动所述终端设备所需的、与所述终端设备序列号对应的固件,并将所获取的固件存储到易失性存储器中;
从所述易失性存储器中加载所获得的固件,实现设备启动。
可选的,所述从所述服务器获得启动所述终端设备所需的、与所述终端设备序列号对应的固件的步骤,包括:
向所述服务器发送获取启动所述终端设备所需固件的第一请求,以使得所述服务器在接收到所述第一请求后查找所述固件,其中所述第一请求包括:所述终端设备的序列号;
接收所述服务器反馈的所述固件。
可选的,所述第一请求还包括:根据预设的加密算法确定的密钥,
相应地,所述接收所述服务器反馈的所述固件的步骤,包括:
接收所述服务器发送的固件文件名,其中,固件文件名为:解密文件的文件名,所述解密文件为:所述服务器采用所述密钥对所述固件的加密文件进行解密得到的文件;
向所述服务器发送获得所述固件文件名所对应文件的第二请求,并接收所述服务器根据所述第二请求反馈的文件,进而获得所述固件。
可选的,所述固件文件名包括:系统内核镜像文件的文件名和应用镜像文件的文件名,
相应地,所述向所述服务器发送获得所述固件文件名所对应文件的第二请求,并接收所述服务器根据所述第二请求反馈的文件,进而获得所述固件的步骤,包括:
向所述服务器发送获取所述系统内核镜像文件的第三请求;
接收所述服务器反馈的所述系统内核镜像文件;
向所述服务器发送获取所述应用镜像文件的第四请求;
接收所述服务器反馈的所述应用镜像文件,进而获得所述固件。
可选的,在所述接收所述服务器反馈的所述应用镜像文件的步骤之后,还包括:
向所述服务器发送获取用于配置所述终端设备功能参数的第五请求;
接收所述服务器反馈的功能参数;
根据所接收的功能参数进行参数配置。
可选的,所述根据引导程序所定义的第一引导步骤,与用于向所述终端设备提供数据服务的服务器建立通信连接的步骤,包括:
根据引导程序所定义的第一引导步骤,获得用于与服务器建立通信连接的网络信息;
根据所获取的网络信息与所述服务器建立通信连接。
可选的,所述根据引导程序所定义的第一引导步骤,获得用于与服务器建立通信连接的网络信息的步骤,包括:
在所述终端设备所在的网络广播获取所述网络信息的第六请求,以使所述服务器在获取所述第六请求后为所述终端设备分配IP地址并获取包含所述IP地址的网络信息,其中,所述第六请求包含:所述终端设备的MAC地址;
接收所述服务器反馈的所述网络信息。
本发明实施的又一方面,还提供了一种设备启动方法,应用于服务器,所述方法包括:
与终端设备建立通信连接,其中,所述终端设备为:由所述服务器提供数据服务的设备;
根据所述终端设备的序列号确定启动所述终端设备所需的固件;
将所述固件发送至所述终端设备,以使得所述终端设备加载所述固件实现启动。
可选的,所述根据所述终端设备的序列号确定启动所述终端设备所需的固件的步骤,包括:
接收终端设备发送的获取所述固件的第一请求,其中,所述第一请求包括:所述终端设备的序列号;
根据所述终端设备的序列号获得启动所述终端设备所需的固件。
可选的,所述第一请求还包括:根据预设的加密算法确定的密钥,
相应地,所述根据所述终端设备的序列号获得启动所述终端设备所需的固件的步骤,包括:
确定启动所述终端设备所需固件的加密文件;
采用所述密钥对所述加密文件进行解密,获得解密文件。
可选的,所述将所述固件发送至所述终端设备的步骤,包括:
将固件文件名反馈给所述终端设备,其中,所述固件文件名为:所述解密文件的文件名;
接收所述终端设备发送的获取所述固件文件名所对应的文件的第二请求,将所述固件文件名对应的解密文件反馈给所述终端设备。
可选的,所述固件文件名包括:系统内核镜像文件的文件名和应用镜像文件的文件名,
所述接收所述终端设备发送的获取所述固件文件名所对应的文件的第二请求,将所述固件文件名对应的解密文件反馈给所述终端设备的步骤,包括:
接收所述终端设备发送的获取所述系统内核镜像文件的第三请求;
将所述系统内核镜像文件反馈给所述终端设备;
接收所述终端设备发送的获取所述应用镜像文件的第四请求;
将所述应用镜像文件反馈给所述终端设备。
可选的,在所述将所述应用镜像文件反馈给所述终端设备的步骤之后,还包括:
接收所述终端设备发送的获取用于配置所述终端设备功能参数的第五请求;
将功能参数反馈给所述终端设备,以使所述终端设备根据所述功能参数进行参数配置。
可选的,所述与终端设备建立通信连接的步骤,包括:
获取所述终端设备广播的获取网络信息的第六请求,其中,所述第六请求包含:所述终端设备的MAC地址;
根据所述MAC地址为所述终端设备分配IP地址;
获取包含所述IP地址的网络信息;
将所述网络信息反馈至所述终端设备,以使得所述终端设备根据所述网络信息与所述服务器建立通信连接。
本发明实施的又一方面,还提供了一种设备启动装置,应用于终端设备,所述装置包括:
运行模块,用于上电后,运行引导程序,其中,所述引导程序为:用于引导所述终端设备启动所需执行的各个引导步骤的代码程序;
第一建立模块,用于根据引导程序所定义的第一引导步骤,与用于向所述终端设备提供数据服务的服务器建立通信连接;
获得模块,用于从所述服务器获得启动所述终端设备所需的、与所述终端设备序列号对应的固件,并将所获取的固件存储到易失性存储器中;
加载模块,用于从所述易失性存储器中加载所获得的固件,实现设备启动。
可选的,所述获得模块,包括:
发送子模块,用于向所述服务器发送获取启动所述终端设备所需固件的第一请求,以使得所述服务器在接收到所述第一请求后查找所述固件,其中所述第一请求包括:所述终端设备的序列号;
接收子模块,用于接收所述服务器反馈的所述固件。
可选的,所述第一请求还包括:根据预设的加密算法确定的密钥,所述接收子模块包括:
接收单元,用于接收所述服务器发送的固件文件名,其中,固件文件名为:解密文件的文件名,所述解密文件为:所述服务器采用所述密钥对所述固件的加密文件进行解密得到的文件;
发送单元,用于向所述服务器发送获得所述固件文件名所对应文件的第二请求,并接收所述服务器根据所述第二请求反馈的文件,进而获得所述固件。
可选的,所述固件文件名包括:系统内核镜像文件的文件名和应用镜像文件的文件名,相应地,所述发送单元,包括:
第一发送子单元,用于向所述服务器发送获取所述系统内核镜像文件的第三请求;
第一接收子单元,用于接收所述服务器反馈的所述系统内核镜像文件;
第二发送子单元,用于向所述服务器发送获取所述应用镜像文件的第四请求;
第二接收子单元,用于接收所述服务器反馈的所述应用镜像文件,进而获得所述固件。
可选的,所述所述发送单元,还包括:
第三发送子单元,用于向所述服务器发送获取用于配置所述终端设备功能参数的第五请求;
第三接收子单元,用于接收所述服务器反馈的功能参数;
配置子单元,用于根据所接收的功能参数进行参数配置。
可选的,所述第一建立模块,包括:
获得子模块,用于根据引导程序所定义的第一引导步骤中,获得用于与服务器建立通信连接的网络信息;
建立子模块,用于根据所获取的网络信息与所述服务器建立通信连接。
可选的,所述获得子模块,具体用于,
在所述终端设备所在的网络广播获取所述网络信息的第六请求,以使所述服务器在获取所述第六请求后为所述终端设备分配IP地址,并获取包含所述IP地址的网络信息,其中,所述第六请求包含:所述终端设备的MAC地址;
接收所述服务器反馈的所述网络信息。
本发明实施的又一方面,还提供了一种设备启动装置,应用于服务器,所述装置包括:
第二建立模块,用于与终端设备建立通信连接,其中,所述终端设备为:由所述服务器提供数据服务的设备;
确定模块,用于根据所述终端设备的序列号确定启动所述终端设备所需的固件;
发送模块,用于将所述固件发送至所述终端设备,以使得所述终端设备加载所述固件实现启动。
可选的,所述确定模块,包括:
接收子模块,用于接收终端设备发送的获取所述固件的第一请求,其中,所述第一请求包括:所述终端设备的序列号;
获得子模块,用于根据所述终端设备的序列号获得启动所述终端设备所需的固件。
可选的,所述第一请求还包括:根据预设的加密算法确定的密钥,
相应地,所述获得子模块,具体用于,
确定启动所述终端设备所需固件的加密文件;
采用所述密钥对所述加密文件进行解密,获得解密文件。
可选的,所述发送模块,包括:
第一反馈子模块,用于将固件文件名反馈给所述终端设备,其中,所述固件文件名为:所述解密文件的文件名;
第二反馈子模块,用于接收所述终端设备发送的获取所述固件文件名所对应的文件的第二请求,将所述固件文件名对应的解密文件反馈给所述终端设备。
可选的,所述固件文件名包括:系统内核镜像文件的文件名和应用镜像文件的文件名,
所述第二反馈子模块,包括:
第一接收单元,用于接收所述终端设备发送的获取所述系统内核镜像文件的第三请求;
第一反馈单元,用于将所述系统内核镜像文件反馈给所述终端设备;
第二接收单元,用于接收所述终端设备发送的获取所述应用镜像文件的第四请求;
第二反馈单元,用于将所述应用镜像文件反馈给所述终端设备。
可选的,所述第二反馈子模块,还包括:
第三接收单元,用于将所述应用镜像文件反馈给所述终端设备之后,接收所述终端设备发送的获取用于配置所述终端设备功能参数的第五请求;
第三反馈单元,用于将功能参数反馈给所述终端设备,以使所述终端设备根据所述功能参数进行参数配置。
可选的,所述建立模块,具体用于,
获取所述终端设备广播的获取网络信息的第六请求,其中,所述第六请求包含:所述终端设备的MAC地址;
根据所述MAC地址为所述终端设备分配IP地址;
获取包含所述IP地址的网络信息,其中,所述网络信息为:用于与所述服务器建立通信连接的信息;
将所述网络信息反馈至所述终端设备,以使得所述终端设备根据所述网络信息与所述服务器建立通信连接。
本发明实施的又一方面,还提供了一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述任一应用于终端设备的设备启动方法。
本发明实施的又一方面,还提供了一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述任一应用于服务器的设备启动方法。
在本发明实施的又一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述任一应用于终端设备的设备启动方法。
在本发明实施的又一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述任一应用于服务器的设备启动方法。
本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一应用于终端设备的设备启动方法。
本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一应用于服务器的设备启动方法。
本发明实施例提供的设备启动方法、装置及设备,终端设备需要进行启动时,运行引导终端设备启动的引导程序,并在运行引导程序过程中,与向终端设备提供数据服务的服务器建立通信连接,进而从服务器获得启动终端设备所需的固件,加载所获得的固件实现启动。应用本发明实施例提供的方案,由于运行终端设备所需的固件存储于服务器中,也就是终端设备的闪存内无需存储运行终端设备所需的固件,因而,能够降低终端设备对闪存的需求,降低生产终端设备的成本。
并且,当需要对运行终端设备所需的固件进行升级时,现有技术中,则需要逐台终端设备进行升级,而本发明实施例提供的方案,是将运行终端设备所需的固件存储在服务器中,因而只需要对服务器中存储的固件进行升级。基于此,能够提高升级效率,降低对终端设备进行维护的成本。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种设备启动方法的交互示意图;
图2为本发明实施例提供的一种设备启动方法的流程示意图;
图3为本发明实施例提供的另一种设备启动方法的流程示意图;
图4为本发明实施例提供的另一种设备启动方法的交互示意图;
图5为本发明实施例提供的一种设备启动装置的结构示意图;
图6为本发明实施例提供的另一种设备启动装置的结构示意图;
图7为本发明实施例提供的一种电子设备的结构示意图;
图8为本发明实施例提供的另一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参照图1,示出了本发明实施例提供的设备启动方法中终端设备与服务器之间进行交互的交互示意图。
终端设备需要进行启动时,运行引导程序,在运行引导程序过程中与服务器建立通信连接;连接成功后,服务器确定用于启动终端设备所需的固件,然后将确定的固件发送给终端设备,终端设备在接收到服务器发送的固件之后,加载接收到的固件实现启动。
本发明实施例提供的方案,由于运行终端设备所需的固件存储于服务器中,也就是终端设备的闪存内无需存储运行终端设备所需的固件,因而,能够降低终端设备对闪存的需求,降低生产终端设备的成本。
并且,当需要对运行终端设备所需的固件进行升级时,现有技术中,则需要逐台终端设备进行升级,而本发明实施例提供的方案,是将运行终端设备所需的固件存储在服务器中,因而只需要对服务器中存储的固件进行升级。基于此,能够提高升级效率,降低对终端设备进行维护的成本。
以下对本发明实施例提供的设备启动方法进行详细说明:
参照图2,示出了本发明实施例提供的一种设备启动方法的流程示意图,应用于终端设备,该方法包括:
S200,上电后,运行引导程序,其中,引导程序为:用于引导终端设备启动所需执行的各个引导步骤的代码程序。
具体的,在终端设备得电的情况下,或者在终端设备重启的情况下,均表明终端设备需要启动,因此,可以在终端设备上电后,或者终端设备重启后,运行引导程序。
引导程序定义了引导终端设备启动过程中需要执行的各个引导步骤。
一种实现方式中,引导程序可以存储在终端设备的闪存中,当终端设备得电后,从自身闪存中读取并运行引导程序。
一种实现方式中,引导程序可以为U-Boot(Universal Boot Loader,通用引导加载程序)程序。
S210,根据引导程序所定义的第一引导步骤,与用于向终端设备提供数据服务的服务器建立通信连接。
具体的,在运行引导程序过程中,根据引导程序所定义的第一引导步骤,终端设备可以在引导程序的引导下获得用于跟服务器建立通信连接的网络信息,然后根据获得的网络信息与服务器建立通信连接。
网络信息可以理解为:终端设备与服务器建立通信连接时所依据的信息。具体的,网络信息可以包括:终端设备的IP(Internet Protocol,网络之间互连的协议)地址、终端设备的网关、服务器的IP地址等。
一种实现方式中,网络信息可以为终端设备自身闪存内存储的信息,此时,闪存内存储的网络信息可以包括:开发人员预先设定好的终端设备的静态IP地址、终端设备的网关和对端服务器的静态IP地址;基于此,在运行所述引导程序过程中,根据引导程序所定义的第一引导步骤,终端设备读取闪存中存储的网络信息,然后根据网络信息中包含的对端服务器的静态IP地址找到相应的服务器,并与找到的服务器建立通信连接。
另一种实现方式中,网络信息也可以是终端设备在自身所在网络中获得的信息,具体的,在运行引导程序过程中,根据引导程序所定义的第一引导步骤终端设备根据预先设定的通信规则找到自身所在网络中与自身通信距离最近的服务器,然后向找到的服务器发送获取网络信息的请求,该服务器在接收到终端设备发送的请求后为终端设备分配IP地址并确定终端设备的网关,然后服务器将包含为终端设备分配的IP地址、终端设备的网关和服务器自身的IP地址的网络信息发送给终端设备。基于此,终端设备从网络中获得网络信息并根据获得的网络信息与服务器建立通信连接。
在运行引导程序过程中,根据引导程序所定义的第一引导步骤终端设备还可以通过BOOTP(Bootstrap Protocol,引导程序协议)协议,在自身所在的网络中广播获取网络信息的请求,当网络中的服务器接收到终端设备广播的获取网络信息的请求后,为终端设备分配IP地址并确定终端设备的网关,然后服务器将包含为终端设备分配的IP地址、终端设备的网关和服务器自身的IP地址的网络信息发送给终端设备;基于此,终端设备从网络中获得网络信息并根据获得的网络信息与服务器建立通信连接。
一种实现方式中,上述获取网络信息的请求中携带有终端设备的MAC(MediaAccess Control,媒体访问控制)地址,服务器接收到上述请求后,可以从上述请求中获得终端设备的MAC地址,并根据预先存储的MAC地址与IP地址之间的对应关系,查找与终端设备的MAC地址相匹配的IP地址,作为终端设备的IP地址,然后将包含终端设备的IP地址、终端设备的网关和服务器的IP地址的网络信息发送给终端设备。
S220,从服务器获得启动终端设备所需的、与终端设备序列号对应的固件,并将所获取的固件存储到易失性存储器中。
易失性存储器(RAM,Random Access Memory),也就是通常所说的系统内存,RAM通常作为操作系统或其他正在运行程序的临时存储介质,当电源关闭时RAM不能保存数据,如果需要保存数据,就必须把数据写入到非易失存储器中,例如把数据写入闪存中。
一种实现方式中,终端设备与服务器建立通信连接后,终端设备需要向服务器发送获取启动终端设备所需固件的请求,服务器在接收到终端设备发送的请求后确定启动终端设备所需的固件并将所确定的固件发送给终端设备;终端设备接收服务器发送的固件。
而为了防止固件被乱用的情况发生,本发明实施例一种实现方式中,第一请求包括:终端设备的序列号。
具体的,当服务器接收到终端设备发送的序列号之后可以查找自身存储的序列号中是否存在终端设备发送的序列号,如果存在,则表示终端设备为可信的设备,也就是认证通过。
而为了防止固件被盗用,本发明实施例一种实现方式中,服务器存储终端设备启动时所需的固件时,可以以加密文件的形式进行存储,也就是说,服务器中存储的是启动终端设备所需固件的加密文件。基于此,第一请求包括:根据预设的加密算法确定的密钥。
预设的加密算法可以为RSA(RSA algorithm,RSA算法)加密算法。
一种实现方式中,终端设备将密钥发送给服务器后,服务器采用密钥对启动终端设备所需固件的加密文件进行解密获得解密文件,然后服务器将解密文件发送给终端设备,终端设备接收服务器反馈的各个解密文件,也就是获得启动终端设备所需的固件。
另一种实现方式中,终端设备将密钥发送给服务器后,服务器采用密钥对启动终端设备所需固件的加密文件进行解密获得解密文件,然后服务器可以将解密文件的文件名,也就是固件文件名发送给终端设备;终端设备在接收到服务器发送的固件文件名之后,向服务器发送获得固件文件名所对应解密文件的第二请求;服务器在接收到终端设备发送的第二请求后将固件文件名对应的解密文件发送给终端设备;终端设备接收服务器发送的解密文件,也就是获得了启动终端设备所需的固件。
其中,解密文件可能为一个,也可能为多个;而在解密文件为多个的情况下,终端设备可以向服务器发送分别获取各个解密文件的请求,服务器在接收到终端设备发送的请求之后将终端设备请求的各个解密文件发送给终端设备。
具体的,解密文件为多个时,一种实现方式中,固件文件名可以包括:系统内核镜像文件的文件名和应用镜像文件的文件名,此时,终端设备可以向服务器发送获取系统内核镜像文件和应用镜像文件的请求,服务器在接收到终端设备发送的请求之后,将系统内核镜像文件和应用镜像文件发送给终端设备,终端设备接收服务器发送的系统内核镜像文件和应用镜像文件,进而获得启动终端设备所需的固件。
终端设备还可以先向服务器发送获取系统内核镜像文件的第三请求;并在接收服务器反馈的系统内核镜像文件之后;继续向服务器发送获取应用镜像文件的第四请求;然后接收服务器反馈的应用镜像文件,进而获得启动终端设备所需的固件。
系统内核镜像文件即为操作系统内核镜像文件,是操作系统的核心部分。
应用镜像文件可以理解为包含能够使终端设备实现具体业务的业务代码文件。比如,包含实现登录业务的业务代码文件。
为了加强终端设备与服务器交互过程的安全性,本发明实施例一种实现方式中,在终端设备与服务器进行交互,获取实现自身启动需要的文件的过程中,可以利用SFTP(Secure File Transfer Protocol,安全文件传送协议)协议来实现终端设备与服务器之间的交互。
为了实现对终端设备的功能参数进行配置,本发明实施例一种实现方式中,在接收服务器反馈的应用镜像文件之后,终端设备还可以向服务器发送获取用于配置终端设备功能参数的第五请求;并且在接收到服务器反馈的功能参数;根据所接收的功能参数进行参数配置。
具体的,功能参数可以理解为终端设备所具有功能对应的参数,比如,用于调节分辨率功能对应的参数。
S230,从所述易失性存储器中加载所获得的固件,实现设备启动。
具体的,当终端设备接收到的是服务器利用密钥对启动终端设备所需固件的加密文件进行解密得到的解密文件后,终端设备可以按照引导程序中定义的各个解密文件的加载顺序,分别从所述易失性存储器中加载各个解密文件,实现设备启动。
本发明实施例提供的各个方案中,由于运行终端设备所需的固件存储于服务器中,也就是终端设备的闪存内无需存储运行终端设备所需的固件,因而,能够降低终端设备对闪存的需求,降低生产终端设备的成本。
并且,当需要对运行终端设备所需的固件进行升级时,现有技术中,则需要逐台终端设备进行升级,而本发明实施例提供的方案,是将运行终端设备所需的固件存储在服务器中,因而只需要对服务器中存储的固件进行升级。基于此,能够提高升级效率,降低对终端设备进行维护的成本。
参照图3,示出了本发明实施例提供的另一种设备启动方法的流程示意图,应用于服务器,该方法包括:
S300,与终端设备建立通信连接,其中,终端设备为:向服务器请求数据服务的设备。
一种实现方式中,上述S300可以包括:
步骤一,获取终端设备广播的获取网络信息的第六请求,其中,所述第六请求包含:所述终端设备的MAC地址;
步骤二,根据所述MAC地址为终端设备分配IP地址;
步骤三,获取包含IP地址的网络信息,其中,网络信息为:用于与服务器建立通信连接的信息;
步骤四,将网络信息反馈至终端设备,以使得终端设备根据网络信息与服务器建立通信连接。
具体的,网络信息可以包括:终端设备的IP地址、终端设备的网关、服务器的IP地址。
一种实现方式中,服务器终中可以预先存储MAC地址与IP地址之间的对应关系,当终端设备在自身所在的网络中广播取网络信息的请求中包含MAC地址时,服务器在获取到取网络信息的请求中包含的MAC地址后,根据预先存储的MAC地址与IP地址之间的对应关系中,查找与接收到的请求中包含的MAC地址相匹配的IP地址作为终端设备的IP地址,然后将终端设备的IP地址、终端设备的网关和服务器的IP地址作为网络信息发送给终端设备。
S310,根据所述终端设备的序列号确定启动终端设备所需的固件。
具体的,服务器可以在与终端设备建立通信连接,并在接收到终端设备发送的获取启动终端设备所需的固件的第一请求之后,根据第一请求中包含的终端设备的序列号确定启动终端设备所需的固件。
为了防止固件被盗用,本发明实施例一种实现方式中,服务器存储终端设备启动时所需的固件时,可以以加密文件的形式进行存储,也就是说,服务器中存储的是启动终端设备所需固件的加密文件。基于此,第一请求还包括:根据预设的加密算法确定的密钥。相应地,上述根据所述终端设备的序列号获得启动终端设备所需的固件的步骤,包括:
确定启动所述终端设备所需固件的加密文件;
采用密钥对所述加密文件进行解密,获得解密文件。
利用终端设备发送的密钥进行解密,解密成功则表明该终端设备为可信的设备,从而保证固件在传输过程中的安全性。
具体的,服务器利用密钥解密固件的过程中,首先,可以利用密钥对启动终端设备所需固件的加密文件进行解密,得到固件头文件,而固件头文件即为用于定义固件中包含的内容所属文件的索引文件;基于此,可以根据固件头拆分固件,获得解密文件。
S320,将固件发送至终端设备,以使得终端设备加载固件实现启动。
一种实现方式中,服务器利用密钥对启动终端设备所需固件的加密文件进行解密,获得固件中包含的解密文件后,可以将解密文件发送至终端设备,以使得终端设备加载接收到的解密文件,实现启动。
另一种实现方式中,服务器也可以将解密文件的文件名,也就是固件文件名发送给终端设备,具体的,上述S320,包括:
将固件文件名反馈给终端设备,其中,固件文件名为:解密文件的文件名;
接收终端设备发送的获取固件文件名所对应的文件的第二请求,将固件文件名对应的解密文件反馈给终端设备。
一种实现方式中,固件文件名可以包括:系统内核镜像文件的文件名和应用镜像文件的文件名,此时,服务器可以在接收终端设备发送的获取系统内核镜像文件的第三请求后;将系统内核镜像文件反馈给终端设备;然后在接收到终端设备发送的获取应用镜像文件的第四请求后;将应用镜像文件反馈给终端设备。
为了增加系统内核镜像文件和应用镜像文件在传输过程中的安全性,本发明实施例一种实现方式中,服务器还可以利用RSA加密算法对系统内核镜像文件和应用镜像文件进行加密,相应地,终端设备在接收到服务器反馈的系统内核镜像文件的加密文件和应用镜像文件的加密文件之后,需要进行解密,加载解密后得到的系统内核镜像文件和应用镜像文件实现启动。
在终端设备启动过程中,终端设备可能需要配置功能参数,基于此,本发明实施例一种实现方式中,在将应用镜像文件反馈给终端设备的步骤之后,服务器还可能接收到终端设备发送的获取用于配置终端设备功能参数的第五请求;此时,服务器可以将功能参数反馈给终端设备,以使终端设备根据功能参数进行参数配置。
功能参数可以理解为终端设备所具有功能对应的参数,比如,用于调节分辨率功能对应的参数。
本发明实施例提供的各个方案中,由于运行终端设备所需的固件存储于服务器中,也就是终端设备的闪存内无需存储运行终端设备所需的固件,因而,能够降低终端设备对闪存的需求,降低生产终端设备的成本。
并且,当需要对运行终端设备所需的固件进行升级时,现有技术中,则需要逐台终端设备进行升级,而本发明实施例提供的方案,是将运行终端设备所需的固件存储在服务器中,因而只需要对服务器中存储的固件进行升级。基于此,能够提高升级效率,降低对终端设备进行维护的成本。
以下以一具体实施例对本发明实施例提供的设备启动方法进行说明,参见图4,为本发明实施例提供的另一种设备启动方法交互示意图。
终端设备上电后,运行U-boot引导程序,启动Bootp引导协议在网路中广播包含MAC地址的获取网络信息的请求;
服务器在接收到获取网络信息的请求后,根据请求中包含的MAC地址为终端设备分配IP地址,然后将为终端设备分配的IP地址、终端设备的网关和服务器的IP地址作为网络信息发送给终端设备;
终端设备根据网络信息与服务器建立通信连接,然后将包含自身序列号[devkey]和RSA密钥的获取固件的请求发送给服务器;
服务器接收到的获取固件的请求后,根据请求中包含的序列号对终端设备进行认证,认证通过后查找启动终端设备所需的固件,找到固件后,利用RSA密钥对固件的加密文件进行解密,得到系统内核镜像文件、文件名为:image_[devkey]和应用镜像文件、文件名为:apps_[devkey],然后将固件文件名:image_[devkey]和apps_[devkey]发送给终端设备。
终端设备在接收到image_[devkey]和apps_[devkey]两个固件文件名之后,通过SFTP协议向服务器发送获取系统内核镜像文件image_[devkey]的请求;
服务器在接收到获取系统内核镜像文件image_[devkey]的请求后,将系统内核镜像文件image_[devkey]的加密文件发送给终端设备;
终端设备在接收系统内核镜像文件image_[devkey]的加密文件之后,对内核镜像文件的加密文件进行解密得到系统内核镜像文件,然后加载系统内核镜像文件;终端设备在加载系统内核镜像文件之后,通过SFTP协议向服务器发送获取应用镜像文件apps_[devkey]的请求;
服务器在接收到获取应用镜像文件apps_[devkey]的请求之后,将应用镜像文件apps_[devkey]的加密文件发送给终端设备;
终端设备在接收到应用镜像文件apps_[devkey]的加密文件之后,对应用镜像文件的加密文件进行解密得到应用镜像文件,然后,通过SFTP协议向服务器发送获取功能参数config_[devkey]的请求;
服务器接收到获取功能参数config_[devkey]的请求后,将功能参数config_[devkey]发送给终端设备;
终端设备在接收到功能参数config_[devkey]后,利用功能参数config_[devkey]进行参数配置,然后,加载应用镜像文件apps_[devkey]实现启动。
参见图5,示出了本发明实施例提供的一种设备启动装置的结构示意图,应用于终端设备,该装置包括:
运行模块500,用于上电后,运行引导程序,其中,所述引导程序为:用于引导所述终端设备启动所需执行的各个引导步骤的代码程序;
第一建立模块510,用于根据引导程序所定义的第一引导步骤,与用于向所述终端设备提供数据服务的服务器建立通信连接;
获得模块520,用于从所述服务器获得启动所述终端设备所需的、与所述终端设备序列号对应的固件,并将所获取的固件存储到易失性存储器中;
加载模块530,用于从所述易失性存储器中加载所获得的固件,实现设备启动。
本发明实施例一种实现方式中,所述获得模块包括:
发送子模块,用于向所述服务器发送获取启动所述终端设备所需固件的第一请求,以使得所述服务器在接收到所述第一请求后查找所述固件,其中所述第一请求包括:所述终端设备的序列号;
接收子模块,用于接收所述服务器反馈的所述固件。
本发明实施例一种实现方式中,所述第一请求还包括:根据预设的加密算法确定的密钥,
所述接收子模块包括:
接收单元,用于接收所述服务器发送的固件文件名,其中,固件文件名为:解密文件的文件名,所述解密文件为:所述服务器采用所述密钥对所述固件的加密文件进行解密得到的文件;
发送单元,用于向所述服务器发送获得所述固件文件名所对应文件的第二请求,并接收所述服务器根据所述第二请求反馈的文件,进而获得所述固件。
本发明实施例一种实现方式中,所述固件文件名包括:系统内核镜像文件的文件名和应用镜像文件的文件名,相应地,所述发送单元,包括:
第一发送子单元,用于向所述服务器发送获取所述系统内核镜像文件的第三请求;
第一接收子单元,用于接收所述服务器反馈的所述系统内核镜像文件;
第二发送子单元,用于向所述服务器发送获取所述应用镜像文件的第四请求;
第二接收子单元,用于接收所述服务器反馈的所述应用镜像文件,进而获得所述固件。
本发明实施例一种实现方式中,所述所述发送单元,还包括:
第三发送子单元,用于向所述服务器发送获取用于配置所述终端设备功能参数的第五请求;
第三接收子单元,用于接收所述服务器反馈的功能参数;
配置子单元,用于根据所接收的功能参数进行参数配置。
本发明实施例一种实现方式中,所述第一建立模块510,包括:
获得子模块,用于根据引导程序所定义的第一引导步骤,通过所述引导程序获得用于与服务器建立通信连接的网络信息;
建立子模块,用于根据所获取的网络信息与所述服务器建立通信连接。
本发明实施例一种实现方式中,所述获得子模块,具体用于,
在所述终端设备所在的网络广播获取所述网络信息的第六请求,以使所述服务器在获取所述第六请求后为所述终端设备分配IP地址,并获取包含所述IP地址的网络信息,其中,所述第六请求包含:所述终端设备的MAC地址;
接收所述服务器反馈的所述网络信息。
本发明实施例提供的各个方案中,由于运行终端设备所需的固件存储于服务器中,也就是终端设备的闪存内无需存储运行终端设备所需的固件,因而,能够降低终端设备对闪存的需求,降低生产终端设备的成本。
并且,当需要对运行终端设备所需的固件进行升级时,现有技术中,则需要逐台终端设备进行升级,而本发明实施例提供的方案,是将运行终端设备所需的固件存储在服务器中,因而只需要对服务器中存储的固件进行升级。基于此,能够提高升级效率,降低对终端设备进行维护的成本。
参见图6,示出了本发明实施例提供的一种设备启动装置的结构示意图,应用于服务器,该装置包括:
第二建立模块600,用于与终端设备建立通信连接,其中,所述终端设备为:向所述服务器请求数据服务的设备;
确定模块610,用于根据所述终端设备的序列号确定启动所述终端设备所需的固件;
发送模块620,用于将所述固件发送至所述终端设备,以使得所述终端设备加载所述固件实现启动。
本发明实施例一种实现方式中,所述确定模块610,包括:
接收子模块,用于接收终端设备发送的获取所述固件的第一请求,其中,所述第一请求包括:所述终端设备的序列号;
获得子模块,用于根据所述终端设备的序列号获得启动所述终端设备所需的固件。
本发明实施例一种实现方式中,所述第一请求还包括:根据预设的加密算法确定的密钥,
相应地,所述获得子模块,具体用于,
确定启动所述终端设备所需固件的加密文件;
采用所述密钥对所述加密文件进行解密,获得解密文件。
本发明实施例一种实现方式中,所述发送模块,包括:
第一反馈子模块,用于将固件文件名反馈给所述终端设备,其中,所述固件文件名为:所述解密文件的文件名;
第二反馈子模块,用于接收所述终端设备发送的获取所述固件文件名所对应的文件的第二请求,将所述固件文件名对应的解密文件反馈给所述终端设备。
本发明实施例一种实现方式中所述固件文件名包括:系统内核镜像文件的文件名和应用镜像文件的文件名,
所述第二反馈子模块,包括:
第一接收单元,用于接收所述终端设备发送的获取所述系统内核镜像文件的第三请求;
第一反馈单元,用于将所述系统内核镜像文件反馈给所述终端设备;
第二接收单元,用于接收所述终端设备发送的获取所述应用镜像文件的第四请求;
第二反馈单元,用于将所述应用镜像文件反馈给所述终端设备。
本发明实施例一种实现方式中,所述第二反馈子模块,还包括:
第三接收单元,用于将所述应用镜像文件反馈给所述终端设备之后,接收所述终端设备发送的获取用于配置所述终端设备功能参数的第五请求;
第三反馈单元,用于将功能参数反馈给所述终端设备,以使所述终端设备根据所述功能参数进行参数配置。
本发明实施例一种实现方式中,所述建立模块600,具体用于,
获取所述终端设备广播的获取网络信息的第六请求,其中,所述第六请求包含:所述终端设备的MAC地址;
根据所述MAC地址为所述终端设备分配IP地址;
获取包含所述IP地址的网络信息,其中,所述网络信息为:用于与所述服务器建立通信连接的信息;
将所述网络信息反馈至所述终端设备,以使得所述终端设备根据所述网络信息与所述服务器建立通信连接。
本发明实施例提供的各个方案中,由于运行终端设备所需的固件存储于服务器中,也就是终端设备的闪存内无需存储运行终端设备所需的固件,因而,能够降低终端设备对闪存的需求,降低生产终端设备的成本。
并且,当需要对运行终端设备所需的固件进行升级时,现有技术中,则需要逐台终端设备进行升级,而本发明实施例提供的方案,是将运行终端设备所需的固件存储在服务器中,因而只需要对服务器中存储的固件进行升级。基于此,能够提高升级效率,降低对终端设备进行维护的成本。
本发明实施例还提供了一种电子设备,如图7所示,包括处理器001、通信接口002、存储器003和通信总线004,其中,处理器001,通信接口002,存储器003通过通信总线004完成相互间的通信,
存储器003,用于存放计算机程序;
处理器001,用于执行存储器003上所存放的程序时,实现本发明实施例所述的应用于终端设备的设备启动方法。
具体的,上述设备启动方法,包括:
上电后,运行引导程序,其中,所述引导程序为:用于引导所述终端设备启动所需执行的各个引导步骤的代码程序;
在运行所述引导程序过程中根据引导程序所定义的第一引导步骤,与用于向所述终端设备提供数据服务的服务器建立通信连接;
从所述服务器获得启动所述终端设备所需的、与所述终端设备序列号对应的固件,并将所获取的固件存储到易失性存储器中;
从所述易失性存储器中加载所获得的固件,实现设备启动。
需要说明的是,上述处理器001执行存储器003上所存放的程序实现应用于终端设备的设备启动方法的其他实施例,与前述方法实施例部分提供的实施例相同,这里不再赘述。
本发明实施例提供的各个方案中,由于运行终端设备所需的固件存储于服务器中,也就是终端设备的闪存内无需存储运行终端设备所需的固件,因而,能够降低终端设备对闪存的需求,降低生产终端设备的成本。
并且,当需要对运行终端设备所需的固件进行升级时,现有技术中,则需要逐台终端设备进行升级,而本发明实施例提供的方案,是将运行终端设备所需的固件存储在服务器中,因而只需要对服务器中存储的固件进行升级。基于此,能够提高升级效率,降低对终端设备进行维护的成本。
本发明实施例还提供了一种视频播放设备,如图8所示,包括处理器011、通信接口012、存储器013和通信总线014,其中,处理器011,通信接口012,存储器013通过通信总线014完成相互间的通信,
存储器013,用于存放计算机程序;
处理器011,用于执行存储器013上所存放的程序时,实现本发明实施例所述的应用于服务器的设备启动方法。
具体的,上述设备启动方法,包括:
与终端设备建立通信连接,其中,所述终端设备为:向所述服务器请求数据服务的设备;
根据所述终端设备的序列号确定启动所述终端设备所需的固件;
将所述固件发送至所述终端设备,以使得所述终端设备加载所述固件实现启动。
需要说明的是,上述处理器011执行存储器013上所存放的程序实现应用于服务器的设备启动方法的其他实施例,与前述方法实施例部分提供的实施例相同,这里不再赘述。
本发明实施例提供的各个方案中,由于运行终端设备所需的固件存储于服务器中,也就是终端设备的闪存内无需存储运行终端设备所需的固件,因而,能够降低终端设备对闪存的需求,降低生产终端设备的成本。
并且,当需要对运行终端设备所需的固件进行升级时,现有技术中,则需要逐台终端设备进行升级,而本发明实施例提供的方案,是将运行终端设备所需的固件存储在服务器中,因而只需要对服务器中存储的固件进行升级。基于此,能够提高升级效率,降低对终端设备进行维护的成本。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明实施的又一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述任一应用于终端设备的设备启动方法。
具体的,上述设备启动方法,包括:
上电后,运行引导程序,其中,所述引导程序为:用于引导所述终端设备启动所需执行的各个引导步骤的代码程序;
根据引导程序所定义的第一引导步骤,与用于向所述终端设备提供数据服务的服务器建立通信连接;
从所述服务器获得启动所述终端设备所需的、与所述终端设备序列号对应的固件,并将所获取的固件存储到易失性存储器中;
从所述易失性存储器中加载所获得的固件,实现设备启动。需要说明的是,通过上述计算机可读存储介质实现应用于终端终端设备的终端设备启动方法的其他实施例,与前述方法实施例部分提供的实施例相同,这里不再赘述。
本发明实施例提供的各个方案中,由于运行终端设备所需的固件存储于服务器中,也就是终端设备的闪存内无需存储运行终端设备所需的固件,因而,能够降低终端设备对闪存的需求,降低生产终端设备的成本。
并且,当需要对运行终端设备所需的固件进行升级时,现有技术中,则需要逐台终端设备进行升级,而本发明实施例提供的方案,是将运行终端设备所需的固件存储在服务器中,因而只需要对服务器中存储的固件进行升级。基于此,能够提高升级效率,降低对终端设备进行维护的成本。
在本发明实施的又一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述任一应用于服务器的设备启动方法。
具体的,上述设备启动方法包括:
与终端设备建立通信连接,其中,所述终端设备为:向所述服务器请求数据服务的设备;
根据所述终端设备的序列号确定启动所述终端设备所需的固件;
将所述固件发送至所述终端设备,以使得所述终端设备加载所述固件实现启动。
需要说明的是,通过上述计算机可读存储介质实现应用于服务器的设备启动方法的其他实施例,与前述方法实施例部分提供的实施例相同,这里不再赘述。
本发明实施例提供的各个方案中,由于运行终端设备所需的固件存储于服务器中,也就是终端设备的闪存内无需存储运行终端设备所需的固件,因而,能够降低终端设备对闪存的需求,降低生产终端设备的成本。
并且,当需要对运行终端设备所需的固件进行升级时,现有技术中,则需要逐台终端设备进行升级,而本发明实施例提供的方案,是将运行终端设备所需的固件存储在服务器中,因而只需要对服务器中存储的固件进行升级。基于此,能够提高升级效率,降低对终端设备进行维护的成本。
在本发明实施的又一方面,本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一应用于终端设备的设备启动方法。
具体的,上述设备启动方法包括:
上电后,运行引导程序,其中,所述引导程序为:用于引导所述终端设备启动所需执行的各个引导步骤的代码程序;
根据引导程序所定义的第一引导步骤,与用于向所述终端设备提供数据服务的服务器建立通信连接;
从所述服务器获得启动所述终端设备所需的、与所述终端设备序列号对应的固件,并将所获取的固件存储到易失性存储器中;
从所述易失性存储器中加载所获得的固件,实现设备启动。
需要说明的是,通过上述计算机程序产品实现应用于终端设备的设备启动方法的其他实施例,与前述方法实施例部提供的实施例相同,这里不再赘述。
本发明实施例提供的各个方案中,由于运行终端设备所需的固件存储于服务器中,也就是终端设备的闪存内无需存储运行终端设备所需的固件,因而,能够降低终端设备对闪存的需求,降低生产终端设备的成本。
并且,当需要对运行终端设备所需的固件进行升级时,现有技术中,则需要逐台终端设备进行升级,而本发明实施例提供的方案,是将运行终端设备所需的固件存储在服务器中,因而只需要对服务器中存储的固件进行升级。基于此,能够提高升级效率,降低对终端设备进行维护的成本。
在本发明实施的又一方面,本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一应用于服务器的设备启动方法。
具体的,上述设备启动方法包括:
与终端设备建立通信连接,其中,所述终端设备为:向所述服务器请求数据服务的设备;
根据所述终端设备的序列号确定启动所述终端设备所需的固件;
将所述固件发送至所述终端设备,以使得所述终端设备加载所述固件实现启动。
需要说明的是,通过上述计算机程序产品实现应用于服务器的设备启动方法的其他实施例,与前述方法实施例部份提供的实施例相同,这里不再赘述。
本发明实施例提供的各个方案中,由于运行终端设备所需的固件存储于服务器中,也就是终端设备的闪存内无需存储运行终端设备所需的固件,因而,能够降低终端设备对闪存的需求,降低生产终端设备的成本。
并且,当需要对运行终端设备所需的固件进行升级时,现有技术中,则需要逐台终端设备进行升级,而本发明实施例提供的方案,是将运行终端设备所需的固件存储在服务器中,因而只需要对服务器中存储的固件进行升级。基于此,能够提高升级效率,降低对终端设备进行维护的成本。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、设备、计算机可读存储介质、计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种设备启动方法,其特征在于,应用于终端设备,所述方法包括:
上电后,运行引导程序,其中,所述引导程序为:用于引导所述终端设备启动所需执行的各个引导步骤的代码程序;
根据引导程序所定义的第一引导步骤,与用于向所述终端设备提供数据服务的服务器建立通信连接;
从所述服务器获得启动所述终端设备所需的、与所述终端设备序列号对应的固件,并将所获取的固件存储到易失性存储器中;
从所述易失性存储器中加载所获得的固件,实现设备启动。
2.如权利要求1所述的方法,其特征在于,所述从所述服务器获得启动所述终端设备所需的、与所述终端设备序列号对应的固件的步骤,包括:
向所述服务器发送获取启动所述终端设备所需固件的第一请求,以使得所述服务器在接收到所述第一请求后查找所述固件,其中所述第一请求包括:所述终端设备的序列号;
接收所述服务器反馈的所述固件。
3.如权利要求2所述的方法,其特征在于,所述第一请求还包括:根据预设的加密算法确定的密钥,
相应地,所述接收所述服务器反馈的所述固件的步骤,包括:
接收所述服务器发送的固件文件名,其中,固件文件名为:解密文件的文件名,所述解密文件为:所述服务器采用所述密钥对所述固件的加密文件进行解密得到的文件;
向所述服务器发送获得所述固件文件名所对应文件的第二请求,并接收所述服务器根据所述第二请求反馈的文件,进而获得所述固件。
4.如权利要求3所述的方法,其特征在于,所述固件文件名包括:系统内核镜像文件的文件名和应用镜像文件的文件名,
相应地,所述向所述服务器发送获得所述固件文件名所对应文件的第二请求,并接收所述服务器根据所述第二请求反馈的文件,进而获得所述固件的步骤,包括:
向所述服务器发送获取所述系统内核镜像文件的第三请求;
接收所述服务器反馈的所述系统内核镜像文件;
向所述服务器发送获取所述应用镜像文件的第四请求;
接收所述服务器反馈的所述应用镜像文件,进而获得所述固件。
5.如权利要求4所述的方法,其特征在于,在所述接收所述服务器反馈的所述应用镜像文件的步骤之后,还包括:
向所述服务器发送获取用于配置所述终端设备功能参数的第五请求;
接收所述服务器反馈的功能参数;
根据所接收的功能参数进行参数配置。
6.如权利要求1所述的方法,其特征在于,所述根据引导程序所定义的第一引导步骤,与用于向所述终端设备提供数据服务的服务器建立通信连接的步骤,包括:
根据引导程序所定义的第一引导步骤,获得用于与服务器建立通信连接的网络信息;
根据所获取的网络信息与所述服务器建立通信连接。
7.如权利要求6所述的方法,其特征在于,所述根据引导程序所定义的第一引导步骤,获得用于与服务器建立通信连接的网络信息的步骤,包括:
在所述终端设备所在的网络广播获取所述网络信息的第六请求,以使所述服务器在获取所述第六请求后为所述终端设备分配IP地址并获取包含所述IP地址的网络信息,其中,所述第六请求包含:所述终端设备的MAC地址;
接收所述服务器反馈的所述网络信息。
8.一种设备启动方法,其特征在于,应用于服务器,所述方法包括:
与终端设备建立通信连接,其中,所述终端设备为:由所述服务器提供数据服务的设备;
根据所述终端设备的序列号确定启动所述终端设备所需的固件;
将所述固件发送至所述终端设备,以使得所述终端设备加载所述固件实现启动。
9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-7任一所述的方法步骤。
10.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求8所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811066867.1A CN110895477B (zh) | 2018-09-13 | 2018-09-13 | 一种设备启动方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811066867.1A CN110895477B (zh) | 2018-09-13 | 2018-09-13 | 一种设备启动方法、装置及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110895477A true CN110895477A (zh) | 2020-03-20 |
CN110895477B CN110895477B (zh) | 2023-06-02 |
Family
ID=69785306
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811066867.1A Active CN110895477B (zh) | 2018-09-13 | 2018-09-13 | 一种设备启动方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110895477B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111756574A (zh) * | 2020-06-19 | 2020-10-09 | 浪潮电子信息产业股份有限公司 | 远程批量更新固件的方法、装置及计算机可读存储介质 |
CN112015478A (zh) * | 2020-08-26 | 2020-12-01 | 北京字节跳动网络技术有限公司 | 内核加载方法、服务器、设备、计算机设备及存储介质 |
CN112612473A (zh) * | 2020-12-23 | 2021-04-06 | 苏州三六零智能安全科技有限公司 | 文件压缩加壳方法、装置、设备及存储介质 |
CN112887503A (zh) * | 2021-01-13 | 2021-06-01 | 珠海奔图电子有限公司 | 一种图像形成设备、服务器、系统及方法 |
WO2021238249A1 (zh) * | 2020-05-28 | 2021-12-02 | 浪潮电子信息产业股份有限公司 | 一种数据存储方法、装置、设备及可读存储介质 |
CN114266055A (zh) * | 2022-03-02 | 2022-04-01 | 山东华翼微电子技术股份有限公司 | 一种多核固件安全存储方法及系统 |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1369069A (zh) * | 1999-06-08 | 2002-09-11 | 通用器材公司 | 嵌入式处理器中可重新编程的保密软件 |
CN101252458A (zh) * | 2008-01-30 | 2008-08-27 | 深圳市共进电子有限公司 | 一种固件批量升级方法 |
CN101384997A (zh) * | 2006-03-01 | 2009-03-11 | 安讯士有限公司 | 用于对多个装置进行升级的方法及系统 |
CN101477471A (zh) * | 2009-01-07 | 2009-07-08 | 杭州海康威视数字技术股份有限公司 | 一种嵌入式系统固件在线升级方法 |
CN101674303A (zh) * | 2009-07-31 | 2010-03-17 | 厦门敏讯信息技术股份有限公司 | 嵌入式网络产品烧写设备及方法 |
CN102364891A (zh) * | 2011-09-13 | 2012-02-29 | 杭州华三通信技术有限公司 | 嵌入式以太网设备升级软件的方法及嵌入式以太网设备 |
CN102426576A (zh) * | 2010-07-29 | 2012-04-25 | 埃森哲环球服务有限公司 | 提高在嵌入式系统上检索数据的速度的方法和嵌入式系统 |
US20140025878A1 (en) * | 2011-04-15 | 2014-01-23 | Zte Corporation | Terminal for Accessing Wireless Network and Running Method thereof |
CN104252370A (zh) * | 2013-06-27 | 2014-12-31 | 佳能株式会社 | 信息处理装置及其控制方法 |
CN104679503A (zh) * | 2013-11-28 | 2015-06-03 | 京瓷办公信息系统株式会社 | 电子设备、以及电子设备的启动方法 |
CN105094903A (zh) * | 2015-07-16 | 2015-11-25 | 广州飞米电子科技有限公司 | 对固件进行升级的方法及装置 |
CN105204899A (zh) * | 2015-09-17 | 2015-12-30 | 浪潮软件集团有限公司 | 一种基于网络的单片机固件升级方法的实现 |
CN106020861A (zh) * | 2016-05-05 | 2016-10-12 | 惠州Tcl移动通信有限公司 | 一种智能手表的fota升级方法及系统 |
CN107301064A (zh) * | 2017-05-19 | 2017-10-27 | 深圳Tcl新技术有限公司 | 蓝牙固件的升级方法、电视终端及计算机可读存储介质 |
CN107358087A (zh) * | 2017-07-07 | 2017-11-17 | 北京海泰方圆科技股份有限公司 | 用于蓝牙身份认证装置的蓝牙芯片的信息存储方法和装置 |
-
2018
- 2018-09-13 CN CN201811066867.1A patent/CN110895477B/zh active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1369069A (zh) * | 1999-06-08 | 2002-09-11 | 通用器材公司 | 嵌入式处理器中可重新编程的保密软件 |
CN101384997A (zh) * | 2006-03-01 | 2009-03-11 | 安讯士有限公司 | 用于对多个装置进行升级的方法及系统 |
CN101252458A (zh) * | 2008-01-30 | 2008-08-27 | 深圳市共进电子有限公司 | 一种固件批量升级方法 |
CN101477471A (zh) * | 2009-01-07 | 2009-07-08 | 杭州海康威视数字技术股份有限公司 | 一种嵌入式系统固件在线升级方法 |
CN101674303A (zh) * | 2009-07-31 | 2010-03-17 | 厦门敏讯信息技术股份有限公司 | 嵌入式网络产品烧写设备及方法 |
CN102426576A (zh) * | 2010-07-29 | 2012-04-25 | 埃森哲环球服务有限公司 | 提高在嵌入式系统上检索数据的速度的方法和嵌入式系统 |
US20140025878A1 (en) * | 2011-04-15 | 2014-01-23 | Zte Corporation | Terminal for Accessing Wireless Network and Running Method thereof |
CN102364891A (zh) * | 2011-09-13 | 2012-02-29 | 杭州华三通信技术有限公司 | 嵌入式以太网设备升级软件的方法及嵌入式以太网设备 |
CN104252370A (zh) * | 2013-06-27 | 2014-12-31 | 佳能株式会社 | 信息处理装置及其控制方法 |
CN104679503A (zh) * | 2013-11-28 | 2015-06-03 | 京瓷办公信息系统株式会社 | 电子设备、以及电子设备的启动方法 |
CN105094903A (zh) * | 2015-07-16 | 2015-11-25 | 广州飞米电子科技有限公司 | 对固件进行升级的方法及装置 |
CN105204899A (zh) * | 2015-09-17 | 2015-12-30 | 浪潮软件集团有限公司 | 一种基于网络的单片机固件升级方法的实现 |
CN106020861A (zh) * | 2016-05-05 | 2016-10-12 | 惠州Tcl移动通信有限公司 | 一种智能手表的fota升级方法及系统 |
CN107301064A (zh) * | 2017-05-19 | 2017-10-27 | 深圳Tcl新技术有限公司 | 蓝牙固件的升级方法、电视终端及计算机可读存储介质 |
CN107358087A (zh) * | 2017-07-07 | 2017-11-17 | 北京海泰方圆科技股份有限公司 | 用于蓝牙身份认证装置的蓝牙芯片的信息存储方法和装置 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021238249A1 (zh) * | 2020-05-28 | 2021-12-02 | 浪潮电子信息产业股份有限公司 | 一种数据存储方法、装置、设备及可读存储介质 |
US11698730B2 (en) | 2020-05-28 | 2023-07-11 | Inspur Electronic Information Industry Co., Ltd. | Data storage method, apparatus, and device, and readable storage medium |
CN111756574A (zh) * | 2020-06-19 | 2020-10-09 | 浪潮电子信息产业股份有限公司 | 远程批量更新固件的方法、装置及计算机可读存储介质 |
US11762653B2 (en) | 2020-06-19 | 2023-09-19 | Inspur Electronic Information Industry Co., Ltd. | Method and apparatus for remotely updating firmware in batches, and computer-readable storage medium |
CN112015478A (zh) * | 2020-08-26 | 2020-12-01 | 北京字节跳动网络技术有限公司 | 内核加载方法、服务器、设备、计算机设备及存储介质 |
CN112015478B (zh) * | 2020-08-26 | 2023-09-22 | 抖音视界有限公司 | 内核加载方法、服务器、设备、计算机设备及存储介质 |
CN112612473A (zh) * | 2020-12-23 | 2021-04-06 | 苏州三六零智能安全科技有限公司 | 文件压缩加壳方法、装置、设备及存储介质 |
CN112612473B (zh) * | 2020-12-23 | 2022-11-04 | 苏州三六零智能安全科技有限公司 | 文件压缩加壳方法、装置、设备及存储介质 |
CN112887503A (zh) * | 2021-01-13 | 2021-06-01 | 珠海奔图电子有限公司 | 一种图像形成设备、服务器、系统及方法 |
CN114266055A (zh) * | 2022-03-02 | 2022-04-01 | 山东华翼微电子技术股份有限公司 | 一种多核固件安全存储方法及系统 |
CN114266055B (zh) * | 2022-03-02 | 2022-05-27 | 山东华翼微电子技术股份有限公司 | 一种多核固件安全存储方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110895477B (zh) | 2023-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110895477B (zh) | 一种设备启动方法、装置及设备 | |
US10320940B1 (en) | Managing generic data | |
EP3206362A1 (en) | Account login method and apparatus | |
CN108540433B (zh) | 用户身份校验方法及装置 | |
US11392702B2 (en) | Discovery and matching of internet of things (IoT) devices and services using a secure global registry | |
US8533458B2 (en) | Headend system for downloadable conditional access service and method of operating the same | |
US20140304297A1 (en) | Method, Server, and User Terminal for Providing and Acquiring Media Content | |
CN109995876B (zh) | 文件传输方法、装置、系统和计算机存储介质 | |
US20090138720A1 (en) | Method and apparatus for detecting movement of downloadable conditional access system host in dcas network | |
CN113391796B (zh) | 一种集成开发环境的构建方法、装置、设备及介质 | |
EP2713295A1 (en) | Cooperative broadcast communication receiver device, resource access control program and cooperative broadcast communication system | |
US8544053B2 (en) | System and method for upgrading a multiprocessor set-top box device with a monolithilic firmware image | |
WO2018014798A1 (zh) | 机顶盒动态配置多ca的方法及系统 | |
US20160210709A1 (en) | Delivery management server and delivery management method for delivering updated application | |
CN110806883A (zh) | 一种固件的安全升级方法、装置及计算机可读介质 | |
CN109600451A (zh) | 一种基于Websocket长连接的终端设备固件升级方法及系统 | |
CN110290097B (zh) | 数据的处理方法、装置、存储介质和电子装置 | |
CN112688811B (zh) | 无线局域网络管理方法、装置、设备和存储介质 | |
US11288058B2 (en) | Internet of things device, a server, and a software updating method | |
CN115686542A (zh) | 应用安装方法、装置、设备及存储介质 | |
CN113900720A (zh) | 操作系统启动方法、装置和电子设备 | |
CN117707578A (zh) | 一种信标固件升级方法、装置及系统 | |
US8689314B2 (en) | Method and apparatus of managing entitlement management message for supporting mobility of DCAS host | |
CN109450857B (zh) | 加密数据配置方法、装置、服务器、加密设备及存储介质 | |
US20130031226A1 (en) | Broadcast-based update management |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |