CN111404733A - 一种固件管控方法和系统及存储介质 - Google Patents
一种固件管控方法和系统及存储介质 Download PDFInfo
- Publication number
- CN111404733A CN111404733A CN202010149325.1A CN202010149325A CN111404733A CN 111404733 A CN111404733 A CN 111404733A CN 202010149325 A CN202010149325 A CN 202010149325A CN 111404733 A CN111404733 A CN 111404733A
- Authority
- CN
- China
- Prior art keywords
- firmware
- server side
- equipment
- management
- control method
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/082—Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
- G06F8/63—Image based installation; Cloning; Build to order
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/069—Management of faults, events, alarms or notifications using logs of notifications; Post-processing of notifications
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
本发明涉及一种固件管控方法和系统,包括:从服务器端获取与设备相对应的固件;对获取到的固件进行校验;校验通过后,将固件烧录至设备中;以及生成操作记录以便于事后追溯。本发明提供的固件管控方法和系统,通过服务器端在线管理和配置固件,自动化下载、校验和烧录固件,并追溯操作日志记录,至少具有以下技术效果:在线配置固件版本,简化下载固件工序,便于事后回溯固件下载问题。
Description
技术领域
本发明涉及物联网领域,尤其涉及一种固件管控方法和系统及存储介质。
背景技术
随着物联网的迅速发展,各类内置电路板或芯片的设备空前地增加,对工厂生产提出了更高的要求,包括生产线优化、生产智能化,成本节约以及品质保障等要求。
固件是指设备内部保存的设备“驱动程序”,通过固件,操作系统才能按照标准的设备驱动实现特定机器的运行动作。固件(Firmware)是一种写入EPROM(可擦写可编程只读存储器)或EEPROM(电可擦可编程只读存储器)中的程序,担任着一个系统最基础最底层工作的软件。而在一些硬件设备中,除了固件以外可能没有其它软件组成,因此固件也就决定着硬件设备的功能及性能。
设备在出厂前需进行固件的烧录、测试、以及相关的检测等。目前通用的方法是在烧录固件或者测试时需根据不同的设备定制相应的固件,即不同规格的设备不能使用相同的固件,这就给生产增加了更多的成本,且由于设备规格各异,因此在给设备烧录固件或测试时难以做到使用通用的流程或工具,无法实现自动化,同时提高了人工成本。而且这种方式对需烧录的固件不能进行统一管理,分散到各个工位后很容易出现烧录错误的问题,而对于开发时因需考虑工厂在生产过程中的组件验证,从而增加了开发阶段的工作量,延长了开发时间。
在大规模生产场景中,工厂内通常会有多条产品线,涉及多种规格的产品或设备,每种产品或设备还会涉及不断迭代版本的固件上。目前对设备终端的固件升级主要是通过人工手动升级,利用专业的工具对设备终端进行固件烧录。每个产品由于具备独立的固件版本,根据部分协议或者固件版本的限制,在烧录时,往往只可以烧录某些特定版本的固件。产品的多个迭代固件在工厂中进行生产时,有可能会由于人工管控不到位,导致产品的固件烧错,甚至是产品间出现固件混烧的现象。
因此,本领域的技术人员致力于研发一种可对固件烧录自动管控的通用型工具或系统。
发明内容
有鉴于现有技术的上述缺陷,本发明所要解决的技术问题是如何自动化地对固件烧录过程进行管控,减少人工操作,提高生产效率。
为实现上述目的,本发明提供了一种固件管控方法和系统,在生产管理服务端按照项目,对生产用的固件版本进行管理和发布;工厂生产下载固件的时候,通过服务端获取到对应的固件,之后进行完整性校验和烧录;下载完之后,将烧录记录上传服务端便于事后追溯。
一方面,本发明提供一种固件管控方法,包括以下步骤:从服务器端获取与设备相对应的固件;对获取到的固件进行校验;校验通过后,将固件烧录至设备中;以及生成操作记录。
在一些实施例中,可选的,根据项目代号从服务器端获取与设备相对应的固件,其中,在服务器端发布的固件与项目代号相对应,以及设备也与项目代号相对应。
在一些实施例中,可选的,服务器端被配置为更新并维护固件列表,其中,固件列表包括固件以及与固件相对应的项目代号。
在一些实施例中,可选的,在服务器端针对每个项目代号保存一个版本的固件。
在一些实施例中,可选的,使用md5对获取到的固件进行校验以保证固件的完整性。
在一些实施例中,可选的,获取固件的步骤包括:从服务器端获取固件的下载路径;以及根据下载路径,将固件下载至设备。
在一些实施例中,可选的,获取固件的步骤还包括:在将固件下载至设备之前,格式化设备。
在一些实施例中,可选的,根据预先配置的参数执行获取固件的步骤,其中,参数包括以下一种或多种参数:固件路径、端口号、USB下载通道、日志记录模式设置/输出路径。
在一些实施例中,可选的,生成定制化的操作记录,其中,操作记录包括以下一种或多种信息:操作状态、成功/失败原因、下载进度、下载参数。
在一些实施例中,可选的,将操作记录上传至服务器端。
另一方面,本发明还提供一种固件管控系统,包括:获取模块,获取模块与服务器端连接,并被配置为从服务器端获取与设备相对应的固件;校验模块,被配置为对获取到的固件进行校验;烧录模块,烧录模块与设备连接,并被配置为在校验通过后将固件烧录至设备中;以及记录模块,被配置为生成操作记录以便于事后追溯。
另一方面,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时能够实现上述的固件管控方法的步骤。
本发明提供的方法和系统,通过服务端在线管理和配置固件,自动化下载、校验和烧录固件,并追溯操作日志记录,至少具有以下技术效果:在线配置固件版本,简化下载固件工序,便于事后回溯固件下载问题。
以下将结合附图对本发明的构思、具体结构及产生的技术效果作进一步说明,以充分地了解本发明的目的、特征和效果。
附图说明
图1是本发明中固件管控方法的一个较佳实施例的方法流程示意图。
图2是本发明中固件管控方法的一个较佳实施例的时序示意图。
图3是本发明中HBFlashTool的一个实施例的模块示意图。
图4是本发明中计算机装置、设备或终端的一个较佳实施例的结构示意图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图示中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
为了阐释的目的而描述了本发明的一些示例性实施例,需要理解的是,本发明可通过附图中没有具体示出的其他方式来实现。
图1是本发明中固件管控方法的一个实施例的方法流程示意图。如图1所示,固件管控方法包括以下步骤:
步骤S110,从服务器端获取与设备相对应的固件。在一些实施例中,可以根据项目从服务器端获取与设备相对应的固件,其中,在服务器端发布的固件与项目相对应,以及设备也与项目相对应。服务器端更新并维护固件列表,其中,固件列表包括固件以及与固件相对应的项目。
服务器端维护的固件列表可以包括项目代号、程序链接、项目版本等信息。每个项目具有唯一的项目代号,该项目中所涉及的设备、固件均使用同样的项目代号进行标识。随着研发和生产的进程,固件的版本会不断地更新迭代,每一个版本的固件具有相应的项目版本。程序链接对应了当前服务器端所保存的固件的下载路径,根据程序链接即可通过通讯网络下载该版本的固件。
固件的类型可以有多种,比如分别与SIP芯片、蓝牙、WIFI相对应的固件类型,对应不同的程序链接。SIP(System In a Package,系统级封装)集成了通信、定位、处理器、存储、蓝牙等多种模块的系统平台,可将多种组件尤其是被动组件、天线等系统所需的其他组件整合于单一构装中,使其更具完整的系统功能。从应用产品的观点来看,SIP更适用于低成本、小面积、高频高速,以及生产周期短的电子产品上。蓝牙(Bluetooth)是一种支持设备短距离通信(一般10m内)的无线电技术,能在包括移动电话、平板电脑、无线耳机、笔记本电脑、相关外设等众多设备之间进行无线信息交换。利用蓝牙技术,能够有效地简化移动通信终端设备之间的通信,也能够成功地简化设备与因特网之间的通信,从而使得数据传输变得更加迅速高效,为无线通信拓宽道路。WIFI(Wireless Fidelity)是一种可以将个人电脑、手持设备(如平板、手机)等终端以无线方式互相连接的技术。
在一些实施例中,一个项目对应一个产品,包含一个设备,服务器端针对每一个项目也保存一个版本的固件。每次该项目的新固件发布,在服务器端上使用新版本的固件替换该项目旧版本的固件上,并更新固件列表中的项目版本和程序链接。这样在服务器端针对每个项目只发布最新版本的固件,对于该项目的设备来说,只需要根据项目代号下载对应的固件即可,不需要关心固件的版本,也不需要人工管控,可避免固件版本错乱以及产品间固件混烧的问题。
步骤S120,对获取到的所述固件进行校验。根据固件的下载路径将固件下载到本地,然后进行校验,保证固件完整性。在一些实施例中,固件可以是以压缩包的形式保存在服务器端,在下载至本地后还需要对固件进行解压。
在一些实施例中,可以使用md5对获取到的固件进行校验以保证固件的完整性。MD5信息摘要算法(Message Digest Algorithm)是密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致。使用MD5算法可以为任何文件(不论其大小、格式、数量)产生一个独一无二的“数字指纹”(字符串形式的散列值),借助这个“数字指纹”,通过检查文件前后MD5值是否发生了改变,就可以知道源文件是否被改动。
服务器端发布固件时,就对应地生成一个md5值,并与固件一起发布。将固件下载至本地后,利用md5校验工具针对下载到的固件生成md5值,并与服务器端发布的md5值进行比较。如果两个md5值相同,则说明下载到的固件是完整的;如果两个md5值不同,则说明下载到的固件是不完整的或者被修改过的。
步骤S130,校验通过后,将所述固件烧录至所述设备中。校验不通过,则重新从服务器端获取。在一些实施例中,可以从服务器端获取固件的下载路径,并根据下载路径,直接将固件下载至设备的PCBA(Printed Circuit Board Assembly,印刷电路板组件)上。烧录固件的过程就是将固件程序导入到相应的电路板或芯片中。
在将固件下载至设备之前,可以先格式化设备的主板,以清除旧版本的固件。在一些实施例中,可以根据预先配置的参数执行上述步骤。由于获取固件以及烧录固件的步骤相对比较固定,并且在生产环境中需要大量重复,如果每次下载固件都需要配置相应的参数,会极大地降低工作效率。通过将一些相对比较固定的参数预先配置好,利用自动化工具根据预先配置的参数自动地下载和烧录固件,可以进一步提高工作效率。
这些预先配置的参数可以包括以下一种或多种参数:固件路径、端口号、下载通道、日志记录模式设置/输出路径等。固件路径可以是下载链接。端口号可以是服务器端提供固件下载的特定端口,默认可以是80或21。下载通道可以包括USB下载通道,USB(Universal Serial Bus,通用串行总线)是一种外部总线标准,用于规范电脑与外部设备的连接和通讯。日志记录模式设置/输出路径,主要是用于读取及生成操作日志记录。
步骤S140,生成操作记录以便于事后追溯。在一些实施例中,可以生成定制化的操作记录,并将操作记录上传至服务器端或其他的装置,以便于查阅或进一步进行自动化的分析处理。根据操作记录,可以对历史记录进行追溯、查阅和统计。对于其中操作失败的操作记录,还可以更有针对性地排摸失败原因,并及时处理。
操作记录可以包括以下一种或多种信息:操作状态、失败原因、下载进度、下载参数。操作状态标识出本次操作是成功还是失败。若本次操作失败,则记录失败信息,例如失败原因、错误代码等。下载进度记录固件下载的进度,可以用百分比或字节数来表示。下载参数则记录与固件下载相关的参数组合,可以包括:固件路径、端口号、下载通道、日志记录模式设置/输出路径等。
本发明还提供一种固件管控系统,包括获取模块、校验模块、烧录模块和记录模块。获取模块与服务器端连接,并被配置为从服务器端获取与设备相对应的固件。校验模块被配置为对获取到的固件进行校验。烧录模块与设备连接,被配置为在校验通过后将固件烧录至设备中。记录模块被配置为生成操作记录以便于事后追溯。
在一些实施例中,获取模块进一步可以根据项目从服务器端获取与设备相对应的固件,其中,在服务器端发布的固件与项目相对应,以及设备也与项目相对应。服务器端更新并维护固件列表,其中,固件列表包括固件以及与固件相对应的项目。服务器端维护的固件列表可以包括项目代号、程序链接、项目版本等信息。每个项目具有唯一的项目代号,该项目中所涉及的设备、固件均使用同样的项目代号进行标识。随着研发和生产的进程,固件的版本会不断地更新迭代,每一个版本的固件具有相应的项目版本。程序链接对应了当前服务器端所保存的固件的下载路径,根据程序链接即可通过通讯网络下载该版本的固件。在一些实施例中,一个项目对应一个产品,包含一个设备,服务器端针对每一个项目也保存一个版本的固件。每次该项目的新固件发布,在服务器端上使用新版本的固件替换该项目旧版本的固件上,并更新固件列表中的项目版本和程序链接。这样在服务器端针对每个项目只发布最新版本的固件,对于该项目的设备来说,获取模块只需要设置为根据项目代号下载对应的固件即可,不需要对固件的版本进行选择,也不需要人工管控,可避免固件版本错乱以及产品间固件混烧的问题。
在一些实施例中,在根据固件的下载路径将固件下载到本地后,校验模块被配置为对固件进行校验,以保证固件完整性。固件可以是以压缩包的形式保存在服务器端,在下载至本地后则需要对固件进行解压。在一些实施例中,校验模块使用md5对获取到的固件进行校验以保证固件的完整性。服务器端发布固件时,就对应地生成一个md5值,并与固件一起发布。将固件下载至本地后,校验模块中可以内置md5校验工具,针对下载到的固件生成md5值,并与服务器端发布的md5值进行比较。如果两个md5值相同,则说明下载到的固件是完整的;如果两个md5值不同,则说明下载到的固件是不完整的或者被修改过的。
如果校验不通过,则获取模块重新从服务器端获取。在一些实施例中,可以获取模块可以从服务器端获取固件的下载路径,并根据下载路径,直接将固件下载至设备的PCBA(印刷电路板组件)上。烧录固件的过程就是烧录模块将固件程序导入到相应的电路板或芯片中。
在获取模块将固件下载至设备之前,烧录模块可以先格式化设备的主板,以清除旧版本的固件。在一些实施例中,可以根据预先配置获取模块和烧录模块的参数以执行相应的操作步骤。由于获取固件以及烧录固件的步骤相对比较固定,并且在生产环境中需要大量重复,如果每次下载固件都需要配置相应的参数,会极大地降低工作效率。通过将一些相对比较固定的参数预先配置好,利用自动化工具根据预先配置的参数自动地下载和烧录固件,可以进一步提高工作效率。这些预先配置的参数可以包括以下一种或多种参数:固件路径、端口号、下载通道、日志记录模式设置/输出路径等。固件路径可以是下载链接。端口号可以是服务器端提供固件下载的特定端口,默认可以是80或21。下载通道可以包括USB下载通道。日志记录模式设置/输出路径,主要是用于读取及生成操作日志记录。
在一些实施例中,可以通过对MTK(联发科,MediaTec Inc.)的FlashTool(MTK平台软件烧录工具)的烧录模块进行二次开发,并简化原生程序的参数配置,来实现上述的各个模块及其预设参数配置。
记录模块可以生成定制化的操作记录,并将操作记录上传至服务器端或其他的装置,以便于查阅或进一步进行自动化的分析处理。根据操作记录,可以对历史记录进行追溯、查阅和统计。对于其中操作失败的操作记录,还可以更有针对性地排摸失败原因,并及时处理。操作记录可以包括以下一种或多种信息:操作状态、失败原因、下载进度、下载参数。操作状态标识出本次操作是成功还是失败。若本次操作失败,则记录失败信息,例如失败原因、错误代码等。下载进度记录固件下载的进度,可以用百分比或字节数来表示。下载参数则记录与固件下载相关的参数组合,可以包括:固件路径、端口号、下载通道、日志记录模式设置/输出路径等。
在一些实施例中,固件管控系统还可以包括测试模块。测试模块被配置为在将固件烧录至设备上后对设备进行测试。在一些实施例中,测试模块可以根据预先配置的参数进行测试,并生成定制化的测试记录。记录模块将包括下载记录、测试记录和烧录记录的操作记录上传至服务器端,以便于事后追溯。
图2是本发明中固件管控方法的一个实施例的时序示意图。如图2所示,HBFlashTool 210是根据MTK的FlashTool进行二次开发得到的生产使用的软件烧录工具。HBFlashTool 210向生产服务器220请求获取生产固件,生产服务器220提供与本项目相对应的最新固件版本及下载链接。HBFlashTool 210通过与设备的连接,对备上的PCBA 230进行格式化,以清除设备上的旧版固件程序。记录格式化的过程并生成测试Log。格式化完成后,HBFlashTool 210下载固件至PCBA 230,记录下载的过程并生成测试Log。下载完成后,将测试Log上传至生产服务器220待查,以便于事后追溯。
图3是本发明中HBFlashTool的一个实施例的模块示意图。如图3所示,HBFlashTool 310可以包括校验模块(MD5Check)320、格式化及下载模块(brom)330、压缩解压模块(zip/unzip)340、记录模块(Log)350。格式化及下载模块330使用Format():void指令格式化PCBA,并使用FlashDownload():void指令下载固件,其格式化和下载的相关参数均可预先配置。校验模块320使用md5对固件进行校验。压缩解压模块340用于对压缩包形式的固件进行解压。记录模块350用于生成定制化的操作记录,并可进一步将操作记录上传至服务器,以便于事后追溯。
在一些实施例中,在生产管理服务端按照项目,对生产用的固件版本进行管理和发布。服务器端维护每个项目,提供生产用程序的固件列表,例如2503、蓝牙、WIFI等。每次新固件发布,确认固件导入前验证和评审都完成之后,更新服务端固件表。维护生产用程序的固件列表或一览信息可以包括:项目代号、(SIP芯片/蓝牙/WIFI)程序链接、项目版本等。每次项目的新固件发布,更新服务端的以下固件信息:(SIP芯片/蓝牙/WIFI)程序链接、项目版本。
在下载和烧录固件中,按照工厂生产的项目,从服务端获取相应的程序链接。根据链接从服务器端下载对应项目的固件到本地,下载到本地之后进行固件的解压和MD5校验,保证固件完整性。作为一个实施例,针对MTK的FlashTool的Format(格式化)和Download(下载)模块进行二次开发,简化原生程序的参数配置,例如预先配置好固件路径、端口号、USB通道下载、Log(日志记录)模式设置/输出路径等参数。保存并输出定制化的下载、烧录和测试Log(日志记录),包括成功/失败原因、下载进度、下载参数等信息。将生成的Log上传公司服务端,方便后续问题追溯。
本发明提供的方法和系统,通过服务端在线管理和配置固件,自动化下载、校验和烧录固件,并追溯测试Log,至少具有以下技术效果:在线配置固件版本,简化下载固件工序,便于事后回溯固件下载问题。
相对于现有的在线固件更新系统来说,本发明提供的方法和系统使用可在工厂生产场景中,针对不同的设备所需烧录的固件进行OTA(Over The Air,空中传输技术)导入,而不仅限于对特定的或某个运行中的设备进行OTA固件升级。并且,本发明的方法和系统中,OTA的主体是外部程序,是通过设备外部的程序下载最新的固件,然后直接烧录到设备中去,与在设备中内置程序相比,可支持不同的设备和固件,通用性更好,在一些实施例中还可以同时对多个设备进行操作,更适用于工厂环境中大规模生产的需求。
在一些实施例中,本发明还提供一种计算机装置、设备或终端,其一个实施例的内部结构可以如图4所示。该计算机装置、设备或终端包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,处理器用于提供计算和控制能力,存储器包括非易失性存储介质、内存储器。非易失性存储介质存储有操作系统和计算机程序。内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。网络接口用于与外部的终端通过网络连接通信。计算机程序被处理器执行时以实现本发明公开的各种方法、流程、步骤,或者处理器执行计算机程序时实现本发明公开的实施例中各个模块或单元的功能。显示屏可以是液晶显示屏或者电子墨水显示屏,输入装置可以是显示屏上覆盖的触摸层,也可以是外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
示例性的,计算机程序可以被分割成一个或多个模块或单元,这些模块或单元被存储在存储器中,并可由处理器执行,以实现本发明的技术方案。这些模块或单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序在装置、设备或终端中的执行过程。
上述的装置、设备或终端可以是桌上型计算机、笔记本、移动电子设备、掌上电脑及云端服务器等计算设备。本领域技术人员应当理解,图中所示出的结构,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的装置、设备或终端的限定,具体的装置、设备或终端可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
处理器可以是中央处理单元(Central Processing Unit,CPU),也可以是其他通用或专用的处理器、微处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器是上述的装置、设备或终端的控制中心,利用各种接口和线路连接装置、设备或终端的各个部分。
存储器可用于存储计算机程序、模块和数据,处理器通过运行或执行存储在存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现装置、设备或终端的各种功能。存储器可主要包括程序存储区和数据存储区,其中,程序存储区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;数据存储区可存储根据应用所创建的各类数据(比如多媒体数据、文档、操作历史记录等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘、智能存储卡(Smart Media Card,SMC)、安全数字(Secure Digital,SD)卡、闪存卡(Flash Card)、磁盘存储器件、闪存器件、或其他易失性固态存储器件。
本发明还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述方法的步骤。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本发明所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
上述的装置或终端设备集成的模块和单元,如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在计算机可读存储介质中。基于这样的理解,本发明实现所公开的各种方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法的步骤。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减。
在一些实施例中,本发明公开的各种方法、流程、模块、装置、设备或系统可以在一个或多个处理装置(例如,数字处理器、模拟处理器、被设计成用于处理信息的数字电路、被设计成用于处理信息的模拟电路、状态机、计算设备、计算机和/或用于以电子方式处理信息的其他机构)中被实现或执行。该一个或多个处理装置可以包括响应于以电子方式存储在电子存储介质上的指令来执行方法的一些或所有操作的一个或多个装置。该一个或多个处理装置可以包括通过硬件、固件和/或软件被配置而专门设计成用于执行方法的一项或多项操作的一个或多个装置。以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。
本发明的实施方式可以在硬件、固件、软件或其各种组合中进行,还可以作为存储在机器可读介质上的且可以使用一个或多个处理装置读取和执行的指令来实现。在一些实施方式中,机器可读介质可以包括用于存储和/或传输呈机器(例如,计算装置)可读形式的信息的各种机构。例如,机器可读存储介质可以包括只读存储器、随机存取存储器、磁盘存储介质、光存储介质、快闪存储器装置以及用于存储信息的其他介质,并且机器可读传输介质可以包括多种形式的传播信号(包括载波、红外信号、数字信号)以及用于传输信息的其他介质。虽然在执行某些动作的特定示例性方面和实施方式的角度可以在以上公开内容中描述固件、软件、例程或指令,但将明显的是,这类描述仅出于方便目的并且这类动作实际上由机器设备、计算装置、处理装置、处理器、控制器、或执行固件、软件、例程或指令的其他装置或机器产生。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
Claims (12)
1.一种固件管控方法,其特征在于,包括以下步骤:
从服务器端获取与设备相对应的固件;
对获取到的所述固件进行校验;
校验通过后,将所述固件烧录至所述设备中;以及
生成操作记录。
2.如权利要求1所述的固件管控方法,其特征在于:
根据项目代号从服务器端获取与所述设备相对应的所述固件,其中,在所述服务器端发布的所述固件与所述项目代号相对应,以及所述设备也与所述项目代号相对应。
3.如权利要求2所述的固件管控方法,其特征在于:
所述服务器端被配置为更新并维护固件列表,其中,所述固件列表包括所述固件以及与所述固件相对应的所述项目代号。
4.如权利要求2所述的固件管控方法,其特征在于:
在所述服务器端针对每个所述项目代号保存一个版本的所述固件。
5.如权利要求1所述的固件管控方法,其特征在于:
使用md5对获取到的所述固件进行校验以保证所述固件的完整性。
6.如权利要求1所述的固件管控方法,其特征在于,获取所述固件的步骤包括:
从服务器端获取所述固件的下载路径;以及
根据所述下载路径,将所述固件下载至所述设备。
7.如权利要求6所述的固件管控方法,其特征在于,获取所述固件的步骤还包括:
在将所述固件下载至所述设备之前,格式化所述设备。
8.如权利要求6或7所述的固件管控方法,其特征在于:
根据预先配置的参数执行获取所述固件的步骤,其中,所述参数包括以下一种或多种参数:固件路径、端口号、USB下载通道、日志记录模式设置/输出路径。
9.如权利要求6或7所述的固件管控方法,其特征在于:
生成定制化的操作记录,其中,所述操作记录包括以下一种或多种信息:操作状态、成功/失败原因、下载进度、下载参数。
10.如权利要求1所述的固件管控方法,其特征在于:
将所述操作记录上传至所述服务器端。
11.一种固件管控系统,其特征在于,包括:
获取模块,所述获取模块与服务器端连接,并被配置为从所述服务器端获取与设备相对应的固件;
校验模块,被配置为对获取到的所述固件进行校验;
烧录模块,所述烧录模块与所述设备连接,并被配置为在校验通过后将所述固件烧录至所述设备中;以及
记录模块,被配置为生成操作记录以便于事后追溯。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时能够实现如权利要求1-10中任一项所述的固件管控方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010149325.1A CN111404733A (zh) | 2020-03-06 | 2020-03-06 | 一种固件管控方法和系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010149325.1A CN111404733A (zh) | 2020-03-06 | 2020-03-06 | 一种固件管控方法和系统及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111404733A true CN111404733A (zh) | 2020-07-10 |
Family
ID=71432208
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010149325.1A Pending CN111404733A (zh) | 2020-03-06 | 2020-03-06 | 一种固件管控方法和系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111404733A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112306523A (zh) * | 2020-10-09 | 2021-02-02 | 华帝股份有限公司 | 一种烧录信息管理方法及装置 |
CN112445502A (zh) * | 2020-12-02 | 2021-03-05 | 深圳小窝科技有限公司 | 一种云端管理通用模块装测的方法 |
CN112559419A (zh) * | 2020-12-21 | 2021-03-26 | 厦门市美亚柏科信息股份有限公司 | 一种pcie存储模块的固件升级保护方法、装置 |
CN112860582A (zh) * | 2021-03-26 | 2021-05-28 | 成都启英泰伦科技有限公司 | 一种本地语音识别模块生产测试方法 |
CN112905195A (zh) * | 2021-03-22 | 2021-06-04 | 珠海格力电器股份有限公司 | 触摸屏驱动配置方法、装置、计算机设备和存储介质 |
CN113821434A (zh) * | 2021-09-09 | 2021-12-21 | 摩拜(北京)信息技术有限公司 | 固件升级测试方法、装置、电子设备和可读存储介质 |
CN116755727A (zh) * | 2023-08-21 | 2023-09-15 | 湖南博匠信息科技有限公司 | 一种嵌入式设备固件智能升级方法及系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103136006A (zh) * | 2011-11-28 | 2013-06-05 | 英业达科技有限公司 | 更新固件的方法 |
CN106055373A (zh) * | 2016-07-04 | 2016-10-26 | 苏州光之翼智能科技有限公司 | 一种批量无人机固件自动升级装置及其方法 |
CN106843957A (zh) * | 2017-01-17 | 2017-06-13 | 青岛海信移动通信技术股份有限公司 | 系统固件升级方法及装置 |
CN108170447A (zh) * | 2017-12-08 | 2018-06-15 | 摩比天线技术(深圳)有限公司 | 芯片在线自动烧录方法和系统 |
CN108616391A (zh) * | 2018-04-11 | 2018-10-02 | 杭州嘉楠耘智信息科技有限公司 | 服务器端进行设备固件升级的方法及系统 |
CN109918110A (zh) * | 2019-03-05 | 2019-06-21 | 郑州中豫绿能电子科技有限公司 | 基于dtu下载板的远程升级方法 |
US20200012488A1 (en) * | 2013-03-15 | 2020-01-09 | Electro Industries/Gauge Tech | Devices, systems and methods for tracking and upgrading firmware in intelligent electronic devices |
-
2020
- 2020-03-06 CN CN202010149325.1A patent/CN111404733A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103136006A (zh) * | 2011-11-28 | 2013-06-05 | 英业达科技有限公司 | 更新固件的方法 |
US20200012488A1 (en) * | 2013-03-15 | 2020-01-09 | Electro Industries/Gauge Tech | Devices, systems and methods for tracking and upgrading firmware in intelligent electronic devices |
CN106055373A (zh) * | 2016-07-04 | 2016-10-26 | 苏州光之翼智能科技有限公司 | 一种批量无人机固件自动升级装置及其方法 |
CN106843957A (zh) * | 2017-01-17 | 2017-06-13 | 青岛海信移动通信技术股份有限公司 | 系统固件升级方法及装置 |
CN108170447A (zh) * | 2017-12-08 | 2018-06-15 | 摩比天线技术(深圳)有限公司 | 芯片在线自动烧录方法和系统 |
CN108616391A (zh) * | 2018-04-11 | 2018-10-02 | 杭州嘉楠耘智信息科技有限公司 | 服务器端进行设备固件升级的方法及系统 |
CN109918110A (zh) * | 2019-03-05 | 2019-06-21 | 郑州中豫绿能电子科技有限公司 | 基于dtu下载板的远程升级方法 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112306523A (zh) * | 2020-10-09 | 2021-02-02 | 华帝股份有限公司 | 一种烧录信息管理方法及装置 |
CN112445502A (zh) * | 2020-12-02 | 2021-03-05 | 深圳小窝科技有限公司 | 一种云端管理通用模块装测的方法 |
CN112559419A (zh) * | 2020-12-21 | 2021-03-26 | 厦门市美亚柏科信息股份有限公司 | 一种pcie存储模块的固件升级保护方法、装置 |
CN112905195A (zh) * | 2021-03-22 | 2021-06-04 | 珠海格力电器股份有限公司 | 触摸屏驱动配置方法、装置、计算机设备和存储介质 |
CN112905195B (zh) * | 2021-03-22 | 2024-06-18 | 珠海格力电器股份有限公司 | 触摸屏驱动配置方法、装置、计算机设备和存储介质 |
CN112860582A (zh) * | 2021-03-26 | 2021-05-28 | 成都启英泰伦科技有限公司 | 一种本地语音识别模块生产测试方法 |
CN113821434A (zh) * | 2021-09-09 | 2021-12-21 | 摩拜(北京)信息技术有限公司 | 固件升级测试方法、装置、电子设备和可读存储介质 |
CN116755727A (zh) * | 2023-08-21 | 2023-09-15 | 湖南博匠信息科技有限公司 | 一种嵌入式设备固件智能升级方法及系统 |
CN116755727B (zh) * | 2023-08-21 | 2023-11-03 | 湖南博匠信息科技有限公司 | 一种嵌入式设备固件智能升级方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111404733A (zh) | 一种固件管控方法和系统及存储介质 | |
CN109729072B (zh) | 通信协议信息处理方法、装置及电子设备 | |
CN104199706B (zh) | 一种eMMC的固件升级方法及其设备 | |
CN101331781B (zh) | 使用装置的嵌入式无线技术的装置制造 | |
CN107678949B (zh) | 实现嵌入式设备不同通信方式的自动化测试方法 | |
CN101216773A (zh) | 一种嵌入式Linux系统固件下载方法和装置 | |
US20220052866A1 (en) | Smart home system control method and apparatus, electronic device | |
CN112052013A (zh) | 软件包的生成方法及装置、存储介质、电子装置 | |
CN107346244B (zh) | 一种汽车eps控制器程序自动化下载系统及方法 | |
CN110134399B (zh) | 编译方法及装置 | |
CN105468393A (zh) | 模块版本升级方法及终端装置 | |
CN107239309A (zh) | 补丁生成方法及装置、更新方法、电子设备、存储介质 | |
CN114461262A (zh) | 数据处理方法、系统、装置、设备,及计算机存储介质 | |
CN108153548A (zh) | 一种emmc固件升级方法和装置 | |
CN104133743A (zh) | 一种将文件烧录到emmc芯片的方法及装置 | |
CN110675894B (zh) | HDCP key在线烧录方法、装置及电子设备 | |
CN106569865B (zh) | 一种终端的系统升级文件的制作方法及制作装置 | |
CN106775904A (zh) | 一种微控制器嵌入式系统的程序烧写系统及方法 | |
CN110134423B (zh) | 固件的更新方法、装置及计算机可读存储介质 | |
CN108259895A (zh) | 机顶盒测试方法、系统及终端设备 | |
CN104917633A (zh) | 模拟fota升级的方法和装置 | |
CN115827543A (zh) | 一种基于FPGA实现eSPI通信方法、系统、设备及介质 | |
CN113505076A (zh) | 文件覆盖检测方法及装置 | |
CN113127370A (zh) | 报表系统冒烟测试方法、rpa机器人及系统 | |
CN113535558A (zh) | 软件版本传输方法及装置 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200710 |
|
RJ01 | Rejection of invention patent application after publication |