CN101957765A - 一种实现设备固件更新的方法及系统、设备 - Google Patents

一种实现设备固件更新的方法及系统、设备 Download PDF

Info

Publication number
CN101957765A
CN101957765A CN2010102718475A CN201010271847A CN101957765A CN 101957765 A CN101957765 A CN 101957765A CN 2010102718475 A CN2010102718475 A CN 2010102718475A CN 201010271847 A CN201010271847 A CN 201010271847A CN 101957765 A CN101957765 A CN 101957765A
Authority
CN
China
Prior art keywords
equipment
new procedures
configuration file
firmware
updated
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
Application number
CN2010102718475A
Other languages
English (en)
Other versions
CN101957765B (zh
Inventor
艾国
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mid Star Technology Ltd By Share Ltd
Original Assignee
Vimicro Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Vimicro Corp filed Critical Vimicro Corp
Priority to CN201010271847.5A priority Critical patent/CN101957765B/zh
Publication of CN101957765A publication Critical patent/CN101957765A/zh
Application granted granted Critical
Publication of CN101957765B publication Critical patent/CN101957765B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明公开了一种设备固件更新的方法及系统、设备,以简化设备固件更新的流程、提高设备固件更新的通用性。方法为:待更新设备设置有USB Massstorage Class驱动设备;对固件进行更新时,USB Massstorage Class驱动设备将待更新设备的通信驱动设备虚拟成虚拟磁盘;通过该虚拟磁盘接收需要更新的固件对应的新程序和配置文件;待更新设备的存储驱动设备根据虚拟磁盘中的新程序和配置文件更新相应固件的程序和配置文件。采用本发明技术方案,不需要在PC机端根据不同的设备开发相应的更新工具,因此不需要投入人力开发和维护更新工具,简化了设备固件更新的操作流程,并且,该种固件更新方法通用性较强。

Description

一种实现设备固件更新的方法及系统、设备
技术领域
本发明涉及计算机技术领域,尤其涉及一种实现设备固件更新的方法及系统、一种设备。
背景技术
固件是指固化的软件,英文为firmware,它是把某个系统程序写入到特定的硬件系统中的flash ROM(Read-only memory,只读存储器)芯片中。产品在生产出来之后,随着周围所使用的软、硬件环境的改变及更新,产品对于许多新的硬件、软件将有可能出现不兼容现象,因此,厂家通过更新固件文件(固件文件包括程序和配置文件),使硬件能兼容更多、更新的软硬件,不断增强产品的兼容性。因此,厂家在原有的硬件基础上开发出了新的功能,对于原有的产品,只须更新固件就可以增加新的功能,以修正固件旧版本中存在的错误、漏洞或不足,即需要对已经出厂的设备的相关固件进行更新。
固件更新,有时也称固件升级、固件刷新、固件刷写、固件重写、固件烧录或固件刷机等,是指把新的固件文件写入到特定的硬件系统中的flash ROM芯片中,代替原有固件文件。
目前,普遍采用的固件更新方法,如图1所示,在PC机端设置有用于更新设备固件的更新工具11,该更新工具11根据DFU(Device Firmware Update,设备固件更新)的具体设计来设置。当需要对待更新设备的相关固件进行更新时,通过PC机从网站或设备商服务器上下载待更新设备的相关固件对应的固件文件,并将下载的固件文件本载入到PC机的更新工具11中;再将待更新设备的通信驱动设备13和PC集的通信驱动设备12通过USB(Universal Serial Bus,通用串行总线)数据线相连,并通过外部跳线的方式启动待更新设备的DFU模式,在进入DFU模式之后将载入到更新工具11中的固件文件通过USB数据线下发给待更新设备的存储管理设备14中,并通过存储驱动设备15将固件文件写入至用于存储固件文件的flash ROM芯片中,以更新固件对应的旧的固件文件。
采用现有的固件更新方法,虽然能够在一定程度上实现对设备中相关固件的更新,但是该种固件更新方法需要在PC机上针对不同的设备开发有相应的固件更新客户端,因此,PC机必须根据不同设备各自的DFU的具体设计,来编写相应的专用于更新该设备的固件的更新工具,即在PC端设置有多个更新工具,以适应不同类型的待更新设备,针对某一更新工具专用于某一类型的设备,不具有通用性,并且还需要在更新工具的开发、维护方面需要投入大量的人力、物理资源。
发明内容
本发明提供一种实现设备固件更新的方法及系统,以简化设备固件更新的流程、提高设备固件更新的通用性。
一种实现设备固件更新的系统,包括包含有第一通信驱动设备的计算机、与所述计算机相连接的待更新设备,其中,所述待更新设备包括:
第二通信驱动设备,与所述第一通信驱动设备相连接,用于在待更新设备进入设备固件更新DFU模式时,虚拟成虚拟磁盘,并通过所述第一通信驱动设备从所述计算机接收待更新设备中需要更新的固件对应的新程序和配置文件;
USB Massstorage Class驱动设备,与所述第二通信驱动设备相连接,用于执行USB Massstorage Class协议,并在待更新设备启动并进入DFU模式时,控制所述第二通信驱动设备虚拟成虚拟磁盘;
存储驱动设备,与所述USB Massstorage Class驱动设备相连接,用于通过USB Massstorage Class驱动设备从所述虚拟磁盘中获取需要更新的固件对应的新程序和配置文件,并根据获取的新程序和配置文件更新相应固件的程序和配置文件。
一种采用上述实现设备固件更新系统对设备固件进行更新的方法,包括:
待更新设备的USB Massstorage Class驱动设备执行USB Massstorage Class协议,并在待更新设备启动并进入设备固件更新DFU模式时,控制待更新设备的通信驱动设备虚拟成虚拟磁盘;
所述虚拟磁盘从计算机中接收所述待更新设备中需要更新的固件对应的新程序和配置文件;
待更新设备的存储驱动设备,通过USB Massstorage Class驱动设备从所述虚拟磁盘中获取需要更新的固件对应的新程序和配置文件,并根据获取的新程序和配置文件更新相应固件的程序和配置文件。
一种设备,包括:
第一通信驱动设备,与计算机的第二通信驱动设备相连接,用于在待更新设备进入设备固件更新DFU模式时,虚拟成虚拟磁盘,并通过所述第二通信驱动设备从所述计算机接收待更新设备中需要更新的固件对应的新程序和配置文件;
USB Massstoragc Class驱动设备,与所述第一通信驱动设备相连接,用于执行USB Massstorage Class协议,并在待更新设备启动并进入DFU模式时,控制所述第一通信驱动设备虚拟成虚拟磁盘;
存储驱动设备,与所述USB Massstorage Class驱动设备相连接,用于通过USB Massstorage Class驱动设备从所述虚拟磁盘中获取需要更新的固件对应的新程序和配置文件,并根据获取的新程序和配置文件更新相应固件的程序和配置文件。
本发明实施例中,当需要对待更新设备中的固件进行更新时,待更新设备进入到设备固件更新模式时,该待更新设备的USB Massstorage Class驱动设备将待更新设备的通信驱动设备虚拟成虚拟磁盘;通过该虚拟磁盘接收需要更新的固件对应的新程序和配置文件;待更新设备的存储驱动设备从虚拟磁盘中获取需要更新的固件对应的新程序和配置文件,并根据获取的新程序和配置文件更新相应固件的程序和配置文件。采用本发明技术方案,不需要在PC机端根据不同的设备各自的设备固件更新而开发相应的更新工具,因此不需要投入人力开发和维护更新工具,简化了设备固件更新的操作流程,并且,该种固件更新方法具有较强的通用性,并不局限于某一类的设备,通用性较强。
附图说明
图1为现有技术中实现设备固件更新的系统架构图;
图2A、图2B、图2C为本发明实施例中实现设备固件更新的系统架构图;
图3为本发明实施例中虚拟FAT文件系统的空间存储结构的示意图;
图4为本发明实施例中备份程序的结构示意图;
图5为本发明实施例中实现设备固件更新的方法流程图。
具体实施方式
为简化对设备固件的更新流程和降低开发难度,本发明实施例提供一种通用性较强的设备固件更新方法,该方法包括:在待更新固件中设置有可执行USB Massstorage Class协议,并在待更新设备启动并进入DFU模式时,控制待更新设备的通信驱动设备虚拟成虚拟磁盘的USB Massstorage Class驱动设备;当需要对待更新设备中的固件进行更新时,USB Massstorage Class驱动设备在待更新设备进入到设备固件更新模式时,将待更新设备的通信驱动设备虚拟成虚拟磁盘;虚拟磁盘从计算机接收需要更新的固件对应的新程序和配置文件;待更新设备的存储驱动设备从虚拟磁盘中获取需要更新的固件对应的新程序和配置文件,并根据获取的新程序和配置文件更新相应固件的程序和配置文件。采用本发明技术方案,不需要在PC机端根据不同的设备各自的设备固件更新而开发相应的更新工具,因此,不需要投入人力开发和维护更新工具,简化了设备固件更新的操作流程,并且,该种固件更新方法具有较强的通用性,并不局限于某一类的设备,通用性较强。
下面结合说明书附图对本发明技术方案进行更清楚、更详细的描述。
参见图2A、图2B,为本发明实施例中实现设备固件更新的系统的结构示意图,该系统包括PC机、与该PC机相连接的待更新设备,其中,
PC机,包括:
第一通信驱动设备20a,用于作为PC机与待更新设备相连接的接入端。
待更新设备包括:
第二通信驱动设备20b,与计算机的第一通信驱动设备20a相连接,在待更新设备进入DFU模式时,虚拟成虚拟磁盘,并通过第一通信驱动设备20a从计算机接收需要更新的固件对应的新程序和配置文件的虚拟磁盘21,此处的新程序和配置文件是指固件更新后程序和配置文件,用于替换固件旧的程序和配置文件。
USB Massstorage Class驱动设备22,与第二通信驱动设备20b相连接,用于执行USB Massstorage Class协议,在待更新设备启动并进入DFU模式时,控制PC机的第二通信驱动设备20b虚拟成虚拟磁盘21。
存储驱动设备24,与USB Massstorage Class驱动设备22相连接,用于通过USB Massstorage Class驱动设备22从虚拟磁盘21中获取需要更新的固件对应的新程序和配置文件,并根据获取的新程序和配置文件更新相应固件的程序和配置文件。
较佳地,由于本发明实施例中的磁盘为虚拟磁盘,因此,为进一步保证PC机能够识别虚拟磁盘21,USB Massstorage Class驱动设备22进一步用于,根据USB Massstorage Class协议生成PC机能够识别的虚拟FAT(File Allocation Table,文件分配表)文件系统,即根据计算机能够识别的FAT文件系统的格式生成虚拟FAT文件系统,并将该虚拟FAT文件系统存储在虚拟磁盘21中;该虚拟FAT文件系统的文件格式遵循PC机能够识别的文件格式,并能够支持FAT12/16/32,该虚拟FAT文件系统中所包含的簇的数量、每个簇包含的扇区数等均通过预先设置。该虚拟FAT文件系统的空间存储结构如图3所示,存储空间以512字节为单位进行划分,划分为多个存储单元,按照划分顺序,各存储单元依次设置为用于存储DFU配置信息的存储空间、用于存储程序数据的存储空间、用于存储程序数据的备份数据的存储空间、用于存储资源数据的存储空间和用于存储用户信息的存储空间。
较佳地,本发明实施例中,当PC机能够识别虚拟磁盘21时,在PC机的桌面上显示该虚拟磁盘21,以便用户将需要更新的固件对应的新程序和配置文件按照虚拟FAT系统文件的空间存储结构,依次存储至FAT系统文件中相应的存储单元中。
较佳地,为保证存储至虚拟磁盘21中的新程序和配置文件为待更新设备期望得到的新程序和配置文件,本发明实施例中,虚拟FAT系统文件的前508字节存储有期望得到的新程序的标记信息;虚拟磁盘21将接收到的新程序的标记信息与虚拟FAT系统文件存储的标记信息进行匹配,若匹配成功,则确认当前接收的新程序和配置文件是期望得到的新程序和配置文件,并继续接收后续的数据;若匹配失败,则确认当前接收到的新程序和配置文件不是期望得到的新程序和配置文件,则停止接收后续的数据,并返回错误信息。
较佳地,为进一步保证虚拟磁盘21接收到新程序和配置文件为期望的数据,虚拟磁盘21在接收完新程序数据与配置文件之后,对接收的新程序和配置文件进行CRC(Cyclic Redundancy Check,循环冗余校验法)校验;若校验成功,则将接收到的新程序与配置文件标记为正确的文件;若校验失败,则放弃接收到的新程序与配置文件,并重新确定需要更新的固件所对应的新程序和配置文件。
较佳地,为保证将获取的新程序和配置文件存储在有效的存储空间中,以提高固件更新的成功率,上述实现设备固件更新的系统还包括坏块管理设备23,该系统的结构示意图如图2C所示:
坏块管理设备23,连接在USB Massstorage Class驱动设备22和存储驱动设备24之间,用于确定存储驱动设备24中用于存储程序和配置文件的存储空间(如flashROM芯片)中是否存在坏的资源块(后续成为坏块),并将确定出的坏块标记为不可用的资源块。
存储驱动设备24将虚拟磁盘21中的新程序和配置文件,按照如图3所示的空间存储结构存储至flashROM芯片中相应的物理存储空间中。
本发明实施例中,DFU配置信息包括:程序镜像的大小、程序镜像的CRC值、每份程序镜像存储的资源块位置、程序镜像存储的份数等信息,以便存储驱动设备24能够根据DFU的配置信息将虚拟磁盘21中的新程序和配置文件正确的存储在flashROM芯片中。
较佳地,DFU配置信息还包括flashROM芯片中坏块的索引信息,以便存储驱动设备24根据该索引信息将新程序和配置文件存储至非坏块中。
较佳地,虚拟磁盘21在虚拟FAT系统文件中备份接收的新程序,备份过程如下:
在备份某一新程序的结构示意图如图4所示,假设该新程序的数据在虚拟FAT文件系统中占据有n个资源块,分别用块1、块2、…、块n表示;假设需要对该新程序备份k份,分别用备份1、备份2、…、备份k表示,则针对每一备份数据,都是以资源块为单位进行备份,而不是以整个程序的数据作为一个整体为单位进行备份,因此,采用该种备份方式,可以将程序划分为分别独立的n块,若该n块中的任意一块数据出现问题时,都可以从其他备份中找到与该块对应的正确的数据,而不会影响其他块,从而提高了数据恢复的成功率。为更好的是本领域技术人员明白带来的技术效果,以具体的实例进行说明,假设备份1、备份k中的块3数据被破坏,程序的原始块2的数据被破坏;采用本发明的备份方式,可从k份备份数据中任意选取一个块2的数据恢复原始块2的数据即可,虽然备份1和备份k中的块3已经被破坏,但是并不影响对原始块2的恢复;而采用现有技术的数据备份方式,此时,由于备份1和备份k中的块3数据被破坏,则把备份1和备份k的所有数据都视为错误数据,只能从其余的(k-2)个备份数据中任意选取块2的数据来恢复原始块2的数据。因此,从上可以看出,采用本发明的数据备份方式可以提高原始数据恢复成功率。
较佳地,本发明实施例中的flashROM芯片可以为Nandflash芯片。
参见图5,为本发明实施例中实现设备固件更新的方法流程图,该方法包括以下步骤:
步骤401、待更新设备通过USB数据线与PC机相连接,并启动DFU模式。
步骤402、待更新设备的USB Massstorage Class驱动设备22将待更新设备的第二通信驱动设备20b虚拟成虚拟磁盘21(如虚拟U盘),并在PC机识别该虚拟磁盘21之后,在PC机上显示该虚拟磁盘21。
步骤403、虚拟磁盘21从计算机中接收待更新设备中需要更新的固件所对应的新程序和配置文件。
步骤404、虚拟磁盘21判断接收的新程序和配置文件是否为期望获取的新程序和配置文件,若是,则执行步骤405,否则执行步骤403。
该步骤中,虚拟磁盘21如何判断接收的新程序和配置文件是否为期望得到的程序和配置文件,采用前述方式实现,在此不再赘述。
步骤405、虚拟磁盘21判断其虚拟FAT系统文件是否有可用的存储空间,若是则执行步骤406,否则执行步骤410。
步骤406、虚拟磁盘21将接收的新程序和配置文件写入到虚拟FAT系统文件中相应的存储空间中。
该步骤中,虚拟磁盘如何将接收的新程序和配置文件写入到虚拟FAT系统文件中,采用前述方式,在此不再赘述。
步骤407、坏块管理设备23判断待更新设备中的flashROM芯片中是否有坏块,若是则执行步骤408,否则直接执行步骤409。
步骤408、坏块管理设备23将flashROM芯片中的坏块标记为不可用的物理资源块,以避免存储驱动设备24将虚拟磁盘21中的新程序和配置文件写入到flashROM芯片中。
步骤409、存储驱动设备24将虚拟磁盘21中的新程序和配置文件写入到flashROM芯片中相应的存储空间中,以更新flashROM芯片中原有的对应的程序和配置文件。
步骤410、返回错误信息,并结束流程。
相应的,本发明实施例还提供一种采用前述系统实现对设备固件进行更新的方法,该方法包括:
待更新设备的USB Massstorage Class驱动设备执行USB Mass storageClass协议,并在待更新设备启动并进入DFU模式时,控制待更新设备的通信驱动设备虚拟成虚拟磁盘;
所述虚拟磁盘从计算机中接收所述待更新设备中需要更新的固件对应的新程序和配置文件;
待更新设备的存储驱动设备,通过USB Massstorage Class驱动设备从所述虚拟磁盘中获取需要更新的固件对应的新程序和配置文件,并根据获取的新程序和配置文件更新相应固件的程序和配置文件。
较佳地,USB Massstorage Class驱动设备将所述通信驱动设备虚拟成虚拟磁盘之后,还包括:
根据计算机能够识别的FAT文件系统的格式生成虚拟FAT文件系统,并在所述虚拟FAT文件系统中存储待更新设备期望得到的新程序的第一标记信息;
所述虚拟磁盘将接收到的新程序的第二标记信息与所述第一标记信息进行匹配,匹配成功时,确定接收到的新程序为所述待更新设备期望得到的新程序,并将接收到的新程序和配置文件存储至所述虚拟FAT文件系统中。
较佳地,虚拟磁盘在接收完所述新程序和配置文件之后,还包括:
对接收的新程序和配置文件的校验码进行校验,若校验失败,则放弃所述新程序和配置文件,并重新接收需要更新的固件对应的新程序和配置文件。
较佳地,虚拟磁盘在接收完新程序之后,还包括:
确定出新程序在虚拟FAT系统中占用的资源块,针对确定出的每个资源块,以资源块为单位对该资源块中的数据进行备份。
较佳地,虚拟磁盘接收完新程序和配置文件之后,还包括:
待更新设备的坏块管理设备确定所述存储驱动设备中用于存储程序和配置文件的存储空间是否存在坏的资源块,并将确定出的坏的资源块标记为不可用资源块。
本发明实施例还提供一种设备,包括:
第一通信驱动设备,与计算机的第二通信驱动设备相连接,用于在待更新设备进入设备固件更新DFU模式时,虚拟成虚拟磁盘,并通过所述第二通信驱动设备从所述计算机接收待更新设备中需要更新的固件对应的新程序和配置文件;
USB Massstorage Class驱动设备,与第一通信驱动设备相连接,用于执行USB Mass storage Class协议,并在待更新设备启动并进入DFU模式时,控制第一通信驱动设备虚拟成虚拟磁盘;
存储驱动设备,与所述USB Massstorage Class驱动设备相连接,用于通过USB Massstorage Class驱动设备从所述虚拟磁盘中获取需要更新的固件对应的新程序和配置文件,并根据获取的新程序和配置文件更新相应固件的程序和配置文件。
较佳地,上述设备还包括:
坏块管理设备,连接在所述USB Massstorage Class驱动设备和存储驱动设备之间,用于确定所述存储驱动设备中用于存储程序和配置文件的存储空间是否存在坏的资源块,并将确定出的坏的资源块标记为不可用资源块。
本发明实施例中,待更新设备通过USB数据线与PC机相连接,当需要对待更新设备中需要更新的固件进行更新时,待更新设备启动并进入到DFU模式,并将待更新设备的通信驱动设备虚拟成虚拟磁盘;将需要更新的固件对应的新程序和文件配置拷贝到虚拟磁盘中;待更新设备根据虚拟磁盘中的新程序和配置文件对本地存储的该固件对应的程序和配置文件进行更新。采用本发明技术方案,由于将PC机的通信驱动设备虚拟成虚拟磁盘,因此,不需要在PC机端根据不同设备各自的DFU的具体设计来编写相应的专用于更新该设备的固件的更新工具,不需要投入大量的人力、物理资源来开发和维护更新工具,并且,固件更新时并不涉及到PC机端的软件程序,从而大大简化了固件更新的操作流程;另外,该种固件更新方式,由于只需要待更新设备启动并进入DFU模可将PC机端的通信驱动设备虚拟成虚拟磁盘,即可进行相应的固件更新,因此,通用性比较强,不局限于某一类设备。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (12)

1.一种实现设备固件更新的系统,包括包含有第一通信驱动设备的计算机,其特征在于,还包括与所述计算机相连接的待更新设备,其中,所述待更新设备包括:
第二通信驱动设备,与所述第一通信驱动设备相连接,用于在待更新设备进入设备固件更新DFU模式时,虚拟成虚拟磁盘,并通过所述第一通信驱动设备从所述计算机接收待更新设备中需要更新的固件对应的新程序和配置文件;
USB Massstorage Class驱动设备,与所述第二通信驱动设备相连接,用于执行USB Mass storage Class协议,并在待更新设备启动并进入DFU模式时,控制所述第二通信驱动设备虚拟成虚拟磁盘;
存储驱动设备,与所述USB Massstorage Class驱动设备相连接,用于通过USB Massstorage Class驱动设备从所述虚拟磁盘中获取需要更新的固件对应的新程序和配置文件,并根据获取的新程序和配置文件更新相应固件的程序和配置文件。
2.如权利要求1所述的系统,其特征在于,所述USB Massstorage Class驱动设备进一步用于,根据所述计算机能够识别的文件配置表FAT文件系统的格式生成虚拟FAT文件系统,所述虚拟FAT文件系统中存储有待更新设备期望得到的新程序的第一标记信息;
所述虚拟磁盘进一步用于,将接收到的新程序的第二标记信息与所述第一标记信息进行匹配,匹配成功时,确定接收到的新程序为所述待更新设备期望得到的新程序,并将接收到的新程序和配置文件存储至所述虚拟FAT文件系统中。
3.如权利要求2所述的系统,其特征在于,所述虚拟磁盘进一步用于,在接收完所述新程序和配置文件之后,对接收的新程序和配置文件的校验码进行校验,若校验失败,则放弃所述新程序和配置文件,并重新接收需要更新的固件对应的新程序和配置文件。
4.如权利要求3所述的系统,其特征在于,所述虚拟磁盘进一步用于,在所述虚拟FAT系统中备份接收的新程序,备份具体为:
确定出新程序在虚拟FAT系统中占用的资源块,针对确定出的每个资源块,以资源块为单位对该资源块中的数据进行备份。
5.如权利要求1~4任一项所述的系统,其特征在于,还包括:
坏块管理设备,连接在所述USB Massstorage Class驱动设备和存储驱动设备之间,用于确定所述存储驱动设备中用于存储程序和配置文件的存储空间是否存在坏的资源块,并将确定出的坏的资源块标记为不可用资源块。
6.一种采用如权利要求1的系统对设备固件进行更新的方法,其特征在于,包括:
待更新设备的USB Massstorage Class驱动设备执行USB Mass storageClass协议,并在待更新设备启动并进入设备固件更新DFU模式时,控制待更新设备的通信驱动设备虚拟成虚拟磁盘;
所述虚拟磁盘从计算机中接收所述待更新设备中需要更新的固件对应的新程序和配置文件;
待更新设备的存储驱动设备,通过USB Massstorage Class驱动设备从所述虚拟磁盘中获取需要更新的固件对应的新程序和配置文件,并根据获取的新程序和配置文件更新相应固件的程序和配置文件。
7.如权利要求6所述的方法,其特征在于,所述USB Massstorage Class驱动设备控制所述通信驱动设备虚拟成虚拟磁盘之后,还包括:
根据计算机能够识别的FAT文件系统的格式生成虚拟FAT文件系统,并在所述虚拟FAT文件系统中存储待更新设备期望得到的新程序的第一标记信息;
所述虚拟磁盘将接收到的新程序的第二标记信息与所述第一标记信息进行匹配,匹配成功时,确定接收到的新程序为所述待更新设备期望得到的新程序,并将接收到的新程序和配置文件存储至所述虚拟FAT文件系统中。
8.如权利要求7所述的方法,其特征在于,所述虚拟磁盘在接收完所述新程序和配置文件之后,还包括:
对接收的新程序和配置文件的校验码进行校验,若校验失败,则放弃所述新程序和配置文件,并重新接收需要更新的固件对应的新程序和配置文件。
9.如权利要求8所述的方法,其特征在于,所述虚拟磁盘在接收完新程序之后,还包括:
确定出新程序在虚拟FAT系统中占用的资源块,针对确定出的每个资源块,以资源块为单位对该资源块中的数据进行备份。
10.如权利要求6~9任一项所述的方法,其特征在于,所述虚拟磁盘接收完新程序和配置文件之后,还包括:
待更新设备的坏块管理设备确定所述存储驱动设备中用于存储程序和配置文件的存储空间是否存在坏的资源块,并将确定出的坏的资源块标记为不可用资源块。
11.一种设备,其特征在于,包括:
第一通信驱动设备,与计算机的第二通信驱动设备相连接,用于在待更新设备进入设备固件更新DFU模式时,虚拟成虚拟磁盘,并通过所述第二通信驱动设备从所述计算机接收待更新设备中需要更新的固件对应的新程序和配置文件;
USB Massstorage Class驱动设备,与所述第一通信驱动设备相连接,用于执行USB Mass storage Class协议,并在待更新设备启动并进入DFU模式时,控制所述第一通信驱动设备虚拟成虚拟磁盘;
存储驱动设备,与所述USB Massstorage Class驱动设备相连接,用于通过USB Massstorage Class驱动设备从所述虚拟磁盘中获取需要更新的固件对应的新程序和配置文件,并根据获取的新程序和配置文件更新相应固件的程序和配置文件。
12.如权利要求11所述的设备,其特征在于,还包括:
坏块管理设备,连接在所述USB Massstorage Class驱动设备和存储驱动设备之间,用于确定所述存储驱动设备中用于存储程序和配置文件的存储空间是否存在坏的资源块,并将确定出的坏的资源块标记为不可用资源块。
CN201010271847.5A 2010-09-02 2010-09-02 一种实现设备固件更新的方法及系统、设备 Active CN101957765B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201010271847.5A CN101957765B (zh) 2010-09-02 2010-09-02 一种实现设备固件更新的方法及系统、设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010271847.5A CN101957765B (zh) 2010-09-02 2010-09-02 一种实现设备固件更新的方法及系统、设备

Publications (2)

Publication Number Publication Date
CN101957765A true CN101957765A (zh) 2011-01-26
CN101957765B CN101957765B (zh) 2016-01-20

Family

ID=43485107

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010271847.5A Active CN101957765B (zh) 2010-09-02 2010-09-02 一种实现设备固件更新的方法及系统、设备

Country Status (1)

Country Link
CN (1) CN101957765B (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102135896A (zh) * 2011-03-17 2011-07-27 中兴通讯股份有限公司 一种基于嵌入式系统实现软件升级的方法和系统
CN102169443A (zh) * 2011-04-07 2011-08-31 柴可 基于虚拟usb磁盘的固件更新方法
CN102841796A (zh) * 2011-06-24 2012-12-26 鸿富锦精密工业(深圳)有限公司 固件烧录方法
CN103761112A (zh) * 2011-12-30 2014-04-30 深圳市大富科技股份有限公司 一种车载多媒体装置及其控制方法
CN104598279A (zh) * 2015-01-23 2015-05-06 广州快飞计算机科技有限公司 基于飞行控制器的固件升级方法和装置
CN102841796B (zh) * 2011-06-24 2016-11-30 泰州市智谷软件园有限公司 固件烧录方法
CN106648781A (zh) * 2016-12-26 2017-05-10 广东芬尼克兹节能设备有限公司 通信设备远程固件升级方法及系统
CN110825419A (zh) * 2019-11-15 2020-02-21 苏州浪潮智能科技有限公司 一种固件刷新方法、装置及电子设备和存储介质
US10613848B2 (en) 2014-12-15 2020-04-07 Xiaomi Inc. Firmware refreshing method and device
CN112463191A (zh) * 2020-11-26 2021-03-09 北京沃东天骏信息技术有限公司 一种文件更新方法及装置、设备、存储介质
CN116360809A (zh) * 2023-05-31 2023-06-30 深圳市微克科技有限公司 一种嵌入式智能终端固件远程升级方法、系统及介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101030145A (zh) * 2007-04-10 2007-09-05 北京中星微电子有限公司 一种实现软件更新的方法及装置
CN101075194A (zh) * 2006-05-15 2007-11-21 明基电通股份有限公司 程序代码执行方法及系统及固件更新方法
US20080301676A1 (en) * 2007-06-04 2008-12-04 International Business Machines Corporation Method for Delivering, Testing, and Applying Software Patches or Other Changes to a Conventionally Installed Application in Virtual Application Containers

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101075194A (zh) * 2006-05-15 2007-11-21 明基电通股份有限公司 程序代码执行方法及系统及固件更新方法
CN101030145A (zh) * 2007-04-10 2007-09-05 北京中星微电子有限公司 一种实现软件更新的方法及装置
US20080301676A1 (en) * 2007-06-04 2008-12-04 International Business Machines Corporation Method for Delivering, Testing, and Applying Software Patches or Other Changes to a Conventionally Installed Application in Virtual Application Containers

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102135896B (zh) * 2011-03-17 2015-08-12 中兴通讯股份有限公司 一种基于嵌入式系统实现软件升级的方法和系统
CN102135896A (zh) * 2011-03-17 2011-07-27 中兴通讯股份有限公司 一种基于嵌入式系统实现软件升级的方法和系统
CN102169443A (zh) * 2011-04-07 2011-08-31 柴可 基于虚拟usb磁盘的固件更新方法
CN102841796A (zh) * 2011-06-24 2012-12-26 鸿富锦精密工业(深圳)有限公司 固件烧录方法
CN102841796B (zh) * 2011-06-24 2016-11-30 泰州市智谷软件园有限公司 固件烧录方法
CN103761112A (zh) * 2011-12-30 2014-04-30 深圳市大富科技股份有限公司 一种车载多媒体装置及其控制方法
US10613848B2 (en) 2014-12-15 2020-04-07 Xiaomi Inc. Firmware refreshing method and device
CN104598279A (zh) * 2015-01-23 2015-05-06 广州快飞计算机科技有限公司 基于飞行控制器的固件升级方法和装置
CN106648781A (zh) * 2016-12-26 2017-05-10 广东芬尼克兹节能设备有限公司 通信设备远程固件升级方法及系统
CN106648781B (zh) * 2016-12-26 2020-03-13 广东芬尼克兹节能设备有限公司 通信设备远程固件升级方法及系统
CN110825419A (zh) * 2019-11-15 2020-02-21 苏州浪潮智能科技有限公司 一种固件刷新方法、装置及电子设备和存储介质
CN110825419B (zh) * 2019-11-15 2022-07-22 苏州浪潮智能科技有限公司 一种固件刷新方法、装置及电子设备和存储介质
CN112463191A (zh) * 2020-11-26 2021-03-09 北京沃东天骏信息技术有限公司 一种文件更新方法及装置、设备、存储介质
CN116360809A (zh) * 2023-05-31 2023-06-30 深圳市微克科技有限公司 一种嵌入式智能终端固件远程升级方法、系统及介质
CN116360809B (zh) * 2023-05-31 2023-08-22 深圳市微克科技有限公司 一种嵌入式智能终端固件远程升级方法、系统及介质

Also Published As

Publication number Publication date
CN101957765B (zh) 2016-01-20

Similar Documents

Publication Publication Date Title
CN101957765B (zh) 一种实现设备固件更新的方法及系统、设备
US8539471B2 (en) Updating firmware of an electronic device
CN101937340B (zh) 使用补丁对软件进行动态升级与控制的方法和装置
CN105808292A (zh) 嵌入式终端设备的固件升级方法
CN106155915B (zh) 数据存储的处理方法及装置
CN101923473B (zh) 嵌入式电子装置及更新其固件的方法
CN104007996A (zh) 一种分布式控制系统的可靠固件升级实现方法
CN104199706A (zh) 一种eMMC的固件升级方法及其设备
KR20040093745A (ko) 통신단말의 소프트웨어 갱신 방법, 통신단말 및소프트웨어 갱신 시스템
CN101904105A (zh) 在更新期间使用高效的块备份和块恢复的移动手持送受话器
CN104081329A (zh) 对数据进行备份的备份存储系统、备份存储装置以及方法
CN104598276B (zh) 一种触摸屏固件在线升级方法及装置
CN103544027A (zh) 控制应用更新的方法及电子设备
CN105718281A (zh) 一种触摸屏固件升级方法及装置
CN102662688B (zh) 一种Nor flash更新方法及装置
WO2005088448A1 (en) Method and apparatus for reliable in-place update
CN103164232A (zh) 更新智能终端操作系统的方法、系统以及计算机
CN101505331A (zh) 升级智能手机系统软件的方法和装置
CN103246527A (zh) 更新移动终端操作系统的方法和系统以及计算机
CN103365684A (zh) 更新方法和多域嵌入式系统
CN116302011B (zh) 一种电缆监测设备固件升级方法
CN107436778A (zh) 一种无人系统的高可靠性升级方法
CN103488492A (zh) 阅读器设备及其固件升级方法及装置
CN111552498B (zh) 一种实现显示屏的屏参升级的方法及系统
CN113010195B (zh) 一种系统升级方法、存储介质及终端设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C53 Correction of patent of invention or patent application
CB03 Change of inventor or designer information

Inventor after: Zhang Yinong

Inventor after: Ai Guo

Inventor before: Ai Guo

COR Change of bibliographic data

Free format text: CORRECT: INVENTOR; FROM: AI GUO TO: ZHANG YINONG AI GUO

C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20180115

Address after: 100083 Haidian District, Xueyuan Road, No. 35, the world building, the second floor of the building on the ground floor, No. 16

Patentee after: Zhongxing Technology Co., Ltd.

Address before: 100083, Haidian District, Xueyuan Road, Beijing No. 35, Nanjing Ning building, 15 Floor

Patentee before: Beijing Vimicro Corporation

TR01 Transfer of patent right
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 100083 Haidian District, Xueyuan Road, No. 35, the world building, the second floor of the building on the ground floor, No. 16

Patentee after: Mid Star Technology Limited by Share Ltd

Address before: 100083 Haidian District, Xueyuan Road, No. 35, the world building, the second floor of the building on the ground floor, No. 16

Patentee before: Zhongxing Technology Co., Ltd.