CN110399143A - 终端设备的刷机方法、装置、计算机存储介质和系统 - Google Patents
终端设备的刷机方法、装置、计算机存储介质和系统 Download PDFInfo
- Publication number
- CN110399143A CN110399143A CN201910690870.9A CN201910690870A CN110399143A CN 110399143 A CN110399143 A CN 110399143A CN 201910690870 A CN201910690870 A CN 201910690870A CN 110399143 A CN110399143 A CN 110399143A
- Authority
- CN
- China
- Prior art keywords
- data block
- thread
- memory
- data
- terminal device
- 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
- 238000000034 method Methods 0.000 title claims abstract description 65
- 238000003860 storage Methods 0.000 title claims abstract description 19
- 230000015654 memory Effects 0.000 claims description 178
- 238000001514 detection method Methods 0.000 claims description 17
- 238000005192 partition Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 7
- 230000005540 biological transmission Effects 0.000 claims description 3
- 230000006870 function Effects 0.000 description 14
- 230000008569 process Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 11
- 230000007246 mechanism Effects 0.000 description 11
- 230000010076 replication Effects 0.000 description 10
- 238000004519 manufacturing process Methods 0.000 description 9
- 230000001360 synchronised effect Effects 0.000 description 8
- 230000006872 improvement Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 244000078534 Vaccinium myrtillus Species 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- KLDZYURQCUYZBL-UHFFFAOYSA-N 2-[3-[(2-hydroxyphenyl)methylideneamino]propyliminomethyl]phenol Chemical compound OC1=CC=CC=C1C=NCCCN=CC1=CC=CC=C1O KLDZYURQCUYZBL-UHFFFAOYSA-N 0.000 description 1
- 235000003095 Vaccinium corymbosum Nutrition 0.000 description 1
- 235000017537 Vaccinium myrtillus Nutrition 0.000 description 1
- 235000021014 blueberries Nutrition 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 201000001098 delayed sleep phase syndrome Diseases 0.000 description 1
- 208000033921 delayed sleep phase type circadian rhythm sleep disease Diseases 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 230000035800 maturation Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
本申请实施例公开了一种终端设备的刷机方法、装置、计算机存储介质和系统,该方法包括:获取待烧录分区的数据;其中,待烧录分区的数据包括N个数据块,N为大于等于2的正整数;针对相邻的第i数据块和第i+1数据块,在检测到第i数据块对应的第一线程结束后,控制第i数据块对应的第二线程和第i+1数据块对应的第一线程并行处理;当检测到第i数据块对应的第二线程和第i+1数据块对应的第一线程都结束时,启动第i+1数据块对应的第二线程,并同时启动下一组相邻的数据块对应的第一线程;其中,i为大于等于1且小于等于N‑1的正整数;当检测到第N数据块对应的第二线程结束时,将待烧录分区的数据全部烧录到终端设备中,以实现对终端设备的刷机。
Description
技术领域
本申请涉及终端技术领域,尤其涉及一种终端设备的刷机方法、装置、计算机存储介质和系统。
背景技术
随着通信技术的不断发展,智能手机、平板电脑、计算机等终端设备的功能越来越强大,而且终端设备的更新换代迅速,性能也不断地提升,导致终端设备所使用的系统也衍生出各种版本,越来越多的用户可以通过刷机的方式来完善系统的功能。
所谓刷机,就是给终端设备重装系统。一般情况下,如果终端设备的系统被破坏,造成功能失效或无法开机,也通常需要刷机来解决。然而目前的刷机方案,将烧录文件加载到终端设备的存储器中的速度较慢,特别是多台终端设备同时刷机且烧录文件位于远程电脑时,将会花费更多的时间来完成刷机,严重影响了终端设备的开发和生产效率。
发明内容
本申请提出了一种终端设备的刷机方法、装置、计算机存储介质和系统,可以节省烧录时间,从而能够提高烧录速度,还能够提高终端设备的开发和生产效率。
本申请的技术方案是这样实现的:
第一方面,本申请实施例提供了一种终端设备的刷机方法,该方法包括:
获取待烧录分区的数据;其中,所述待烧录分区的数据包括N个数据块,N为大于等于2的正整数;
针对相邻的第i数据块和第i+1数据块,在检测到第i数据块对应的第一线程结束后,控制第i数据块对应的第二线程和第i+1数据块对应的第一线程并行处理;
当检测到第i数据块对应的第二线程和第i+1数据块对应的第一线程都结束时,启动第i+1数据块对应的第二线程,并同时启动下一组相邻的数据块对应的第一线程;其中,所述第一线程为从计算机设备的硬盘中读取第i数据块到第一内存区域或读取第i+1数据块到第二内存区域,所述第二线程为从第一内存区域发送第i数据块到终端设备或从第二内存区域发送第i+1数据块到终端设备,i为大于等于1且小于等于N-1的正整数;
当检测到第N数据块对应的第二线程结束时,将所述待烧录分区的数据全部烧录到终端设备中,以实现对所述终端设备的刷机。
第二方面,本申请实施例提供了一种终端设备的刷机装置,该装置包括获取单元、检测单元、控制单元和烧录单元,其中,
所述获取单元,配置为获取待烧录分区的数据;其中,所述待烧录分区的数据包括N个数据块,N为大于等于2的正整数;
所述控制单元,配置为针对相邻的第i数据块和第i+1数据块,在所述检测单元检测到第i数据块对应的第一线程结束后,控制第i数据块对应的第二线程和第i+1数据块对应的第一线程并行处理;
所述控制单元,还配置为当检测到第i数据块对应的第二线程和第i+1数据块对应的第一线程都结束时,启动第i+1数据块对应的第二线程,并同时启动下一组相邻的数据块对应的第一线程;其中,所述第一线程为从计算机设备的硬盘中读取第i数据块到第一内存区域或读取第i+1数据块到第二内存区域,所述第二线程为从第一内存区域发送第i数据块到终端设备或从第二内存区域发送第i+1数据块到终端设备,i为大于等于1且小于等于N-1的正整数;
所述烧录单元,配置为当检测到第N数据块对应的第二线程结束时,将所述待烧录分区的数据全部烧录到终端设备中,以实现对所述终端设备的刷机。
第三方面,本申请实施例提供了一种终端设备的刷机装置,该装置包括存储器和处理器;其中,
所述存储器,配置为存储能够在所述处理器上运行的计算机程序;
所述处理器,配置为在运行所述计算机程序时,执行如第一方面所述的方法。
第四方面,本申请实施例提供了一种计算机存储介质,该计算机存储介质存储有终端设备的刷机程序,所述终端设备的刷机程序被至少一个处理器执行时实现如第一方面所述的方法。
第五方面,本申请实施例提供了一种系统,该系统包括烧录器、计算机设备和终端设备,所述烧录器至少包括如第二方面或第三方面所述的装置。
本申请实施例所提供的一种终端设备的刷机方法、装置、计算机存储介质和系统,首先获取待烧录分区的数据,该待烧录分区的数据包括N个数据块,N为大于等于2的正整数;然后针对相邻的第i数据块和第i+1数据块,在检测到第i数据块对应的第一线程结束后,控制第i数据块对应的第二线程和第i+1数据块对应的第一线程并行处理;以及当检测到第i数据块对应的第二线程和第i+1数据块对应的第一线程都结束时,启动第i+1数据块对应的第二线程,并同时启动下一组相邻的数据块对应的第一线程;其中,第一线程为从计算机设备的硬盘中读取第i数据块到第一内存区域或读取第i+1数据块到第二内存区域,第二线程为从第一内存区域发送第i数据块到终端设备或从第二内存区域发送第i+1数据块到终端设备,i为大于等于1且小于等于N-1的正整数;最后当检测到第N数据块对应的第二线程结束时,将所述待烧录分区的数据全部烧录到终端设备中,以实现对终端设备的刷机;这样,利用计算机设备的双内存机制(包括第一内存区域和第二内存区域)以及预读取功能,可以将从计算机设备的硬盘中读取数据块和将数据块发送到终端设备进行并行处理,如此弥补了从硬盘读取数据慢的问题,节省了烧录时间,从而不仅提高了烧录速度,而且还提高了终端设备的开发和生产效率。
附图说明
图1为相关技术方案提供的一种终端设备的传统刷机方案的流程示意图;
图2为本申请实施例提供的一种终端设备的刷机方法的流程示意图;
图3为本申请实施例提供的另一种终端设备的刷机方法的流程示意图;
图4为本申请实施例提供的又一种终端设备的刷机方法的流程示意图;
图5为本申请实施例提供的一种终端设备的改进刷机方案的流程示意图;
图6为本申请实施例提供的一种终端设备的刷机装置的组成结构示意图;
图7为本申请实施例提供的一种终端设备的刷机装置的硬件结构示意图;
图8为本申请实施例提供的一种终端设备的刷机系统的组成结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。可以理解的是,此处所描述的具体实施例仅仅用于解释相关申请,而非对该申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分。
在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。
终端设备可以以各种形式来实施。例如,本申请中描述的终端设备可以包括诸如智能手机、平板电脑、笔记本电脑、掌上电脑、个人数字助理(Personal DigitalAssistant,PDA)、便捷式媒体播放器(Portable Media Player,PMP)、导航装置、可穿戴设备等移动式终端,以及诸如数字TV、台式计算机等固定式终端。本领域技术人员可以理解的是,本申请的实施方式不仅可以应用于移动式终端,还可以应用于固定式终端。
参见图1,其示出了相关技术方案提供的一种终端设备的传统刷机方案的流程示意图。如图1所示,在该传统刷机方案10中,计算机设备110为单内存机制,该计算机设备110包括硬盘1101和内存区域1102,终端设备120包括存储器1201;其中,计算机设备110和终端设备120之间通过通用串行总线(Universal Serial Bus,USB)数据线连接,在计算机110和终端设备120之间还连接有烧录器(图1中未示出),利用烧录器可以将计算机设备110的硬盘1101中所放置的烧录文件(也称为刷机文件)写入或烧录到终端设备120的存储器1201中。这里,烧录文件可以虚拟划分为多个数据块,比如将烧录文件划分为AAAA…等多个数据块,然后将每个数据块依次烧录到终端设备的存储器1201中。
基于图1所示的传统刷机方案10,利用烧录器,首先从计算机设备110的硬盘1101中读取一个数据块到内存区域1102,然后再将该数据块通过USB数据线发送到终端设备102,由终端设备102将接收到的数据块写入其自身的存储器1201中;然后将这多个数据块按照该处理过程依次写入到存储器1201中。该传统刷机方案10的处理过程为串行处理,从而导致烧录所需的时间较长,烧录速度过慢。
随着终端设备的功能越来越强大,内置软件也越来越多,需要烧录到终端设备中的烧录文件也会越来越大,甚至高达9Gb;这时候仍然按照该传统刷机方案将会导致烧录所需的时间很长,严重影响到终端设备的开发和生产效率。尤其是多台终端设备同时刷机而且烧录文件还位于远程计算机设备上时,考虑到网络下载速度慢的问题,将会导致烧录所需的时间变得更长,从而进一步影响了终端设备的开发和生产效率。
本申请实施例提供了一种终端设备的刷机方法,首先获取待烧录分区的数据,该待烧录分区的数据包括N个数据块,N为大于等于2的正整数;然后针对相邻的第i数据块和第i+1数据块,在检测到第i数据块对应的第一线程结束后,控制第i数据块对应的第二线程和第i+1数据块对应的第一线程并行处理;以及当检测到第i数据块对应的第二线程和第i+1数据块对应的第一线程都结束时,启动第i+1数据块对应的第二线程,并同时启动下一组相邻的数据块对应的第一线程;其中,第一线程为从计算机设备的硬盘中读取第i数据块到第一内存区域或读取第i+1数据块到第二内存区域,第二线程为从第一内存区域发送第i数据块到终端设备或从第二内存区域发送第i+1数据块到终端设备,i为大于等于1且小于等于N-1的正整数;最后当检测到第N数据块对应的第二线程结束时,将所述待烧录分区的数据全部烧录到终端设备中,以实现对终端设备的刷机;这样,利用计算机设备的双内存机制(包括第一内存区域和第二内存区域)以及预读取功能,可以将从计算机设备的硬盘中读取数据块和将数据块发送到终端设备进行并行处理,如此弥补了从硬盘读取数据慢的问题,节省了烧录时间,从而不仅提高了烧录速度,而且还提高了终端设备的开发和生产效率。
下面将结合附图对本申请各实施例进行详细描述。
本申请的一实施例中,参见图2,其示出了本申请实施例提供的一种终端设备的刷机方法的流程示意图。如图2所示,该方法可以包括:
S201:获取待烧录分区的数据;其中,所述待烧录分区的数据包括N个数据块,N为大于等于2的正整数;
需要说明的是,一方面终端设备在出厂前会烧录操作系统,另一方面随着终端设备的功能逐渐强大,每间隔一段时间终端设备的操作系统会进行升级,这时候用户也可以将最新版本的操作系统烧录到终端设备中。也就是说,本申请实施例所提供的终端设备的刷机方法,不仅可以应用于终端设备的生产过程,通过刷机将烧录文件首次写入到终端设备的存储器中;还可以应用于终端设备的使用过程,通过刷机来更换终端设备当前的操作系统版本;本申请实施例不作具体限定。
还需要说明的是,终端设备的操作系统通常有Android系统、iOS系统、Windows系统、Symbian系统和黑莓系统等。以Android系统为例,终端设备的操作系统可以划分为多个分区,比如system分区、userdata分区、vendor分区、boot分区等。在本申请实施例中,刷机的具体过程是将每一个分区的数据烧录到终端设备的存储器中。这里,假定待烧录分区为system分区,在获取到system分区的数据之后,可以对该system分区的数据进行虚拟划分,从而能够得到N个数据块,N为大于等于2的正整数。
本申请实施例中,可以通过烧录器读取烧录文件信息,以获取到待烧录分区的数据。其中,烧录文件是存储在计算机设备的硬盘中,由于硬盘为非易失性存储设备,而且在断电之后其内存储的内容不会丢失。然而硬盘速度比较慢,如果待烧录分区的数据直接从硬盘中读写,将会非常影响效率,因此还可以将待烧录分区的数据先从计算机的硬盘中读取到内存区域,然后再从内存区域发送到终端设备中。
需要特别注意的是,在本申请实施例中,计算机设备为双内存机制,内存区域可以包括第一内存区域和第二内存区域,而且第一内存区域和第二内存区域的状态同步;这样在终端设备的刷机过程中,利用计算机设备的双内存机制,能够弥补从计算机设备的硬盘读取数据慢的问题,可以节省烧录时间。
S202:针对相邻的第i数据块和第i+1数据块,在检测到第i数据块对应的第一线程结束后,控制第i数据块对应的第二线程和第i+1数据块对应的第一线程并行处理;
S203:当检测到第i数据块对应的第二线程和第i+1数据块对应的第一线程都结束时,启动第i+1数据块对应的第二线程,并同时启动下一组相邻的数据块对应的第一线程;
需要说明的是,第i数据块和第i+1数据块表示N个数据库中任意两个相邻的数据块,i为大于等于1且小于等于N-1的正整数。其中,第一线程为从计算机设备的硬盘中读取第i数据块到第一内存区域或读取第i+1数据块到第二内存区域,第二线程为从第一内存区域发送第i数据块到终端设备或从第二内存区域发送第i+1数据块到终端设备。
还需要说明的是,计算机设备和终端设备之间连接有USB数据线。具体地,第二线程中,第i数据块或第i+1数据块可以经过USB数据线从计算机设备的第一内存区域或第二内存区域发送到终端设备。
这里,对于待烧录分区的N个数据块中,每两个相邻的数据块(比如第i数据块和第i+1数据块),当第i数据块对应的第一线程结束之后,表明了第i数据块已经从计算机设备的硬盘全部读取到第一内存区域,这时候可以同时启动第i数据块对应的第二线程和第i+1数据块对应的第一线程,即可以启动将第i数据块从第一内存区域发送到终端设备,同时还可以启动将第i+1数据块从计算机设备的硬盘读取到第二内存区域;在第i数据块已经从第一内存区域全部发送到终端设备之后,如果这时候第i+1数据块也已经从计算机设备的硬盘全部读取到第二内存区域,那么这时候可以启动第i+1数据块对应的第二线程,即启动第i+1数据块从第二内存区域发送到终端设备,同时还可以启动下一组相邻的数据块对应的第一线程;这样循环操作,直到第N数据块对应的第二线程结束,即将第N数据块也全部发送到终端设备中。
S204:当检测到第N数据块对应的第二线程结束时,将所述待烧录分区的数据全部烧录到终端设备中,以实现对所述终端设备的刷机。
需要说明的是,当检测到第N数据块对应的第二线程结束时,表明了N个数据块已经全部发送到终端设备中,也就意味着将待烧录分区的数据已经全部烧录到终端设备的存储器中,已经完成了终端设备的刷机。
本实施例提供了一种终端设备的刷机方法,首先获取待烧录分区的数据,该待烧录分区的数据包括N个数据块,N为大于等于2的正整数;然后针对相邻的第i数据块和第i+1数据块,在检测到第i数据块对应的第一线程结束后,控制第i数据块对应的第二线程和第i+1数据块对应的第一线程并行处理;以及当检测到第i数据块对应的第二线程和第i+1数据块对应的第一线程都结束时,启动第i+1数据块对应的第二线程,并同时启动下一组相邻的数据块对应的第一线程;其中,第一线程为从计算机设备的硬盘中读取第i数据块到第一内存区域或读取第i+1数据块到第二内存区域,第二线程为从第一内存区域发送第i数据块到终端设备或从第二内存区域发送第i+1数据块到终端设备,i为大于等于1且小于等于N-1的正整数;最后当检测到第N数据块对应的第二线程结束时,将所述待烧录分区的数据全部烧录到终端设备中,以实现对所述终端设备的刷机;这样,利用计算机设备的双内存机制(包括第一内存区域和第二内存区域)以及预读取功能,可以将从计算机设备的硬盘中读取数据块和将数据块发送到终端设备进行并行处理,如此弥补了从硬盘读取数据慢的问题,节省了烧录时间,从而不仅提高了烧录速度,而且还提高了终端设备的开发和生产效率。
本申请的另一实施例中,为了获取待烧录分区的数据,可以通过读取烧录文件信息以确定出待烧录分区对应的偏移地址,从而获取所述待烧录分区的数据。因此,在一些实施例中,参见图3,其示出了本申请实施例提供的另一种终端设备的刷机方法的流程示意图。如图3所示,对于S201来说,所述获取待烧录分区的数据,可以包括:
S301:读取烧录文件信息;其中,所述烧录文件信息包括分区表以及每一个分区对应的偏移地址;
需要说明的是,烧录文件可以命名为phone.ofp,该烧录文件存储在计算机设备的硬盘中,可以通过烧录器来读取烧录文件信息。其中,该烧录文件信息包含了分区表和每一个分区对应的偏移地址;这里,分区表中定义了终端设备的存储器中划分了多少个分区、每一个分区的地址以及每一个分区的长度等,分区可以包括有system分区、userdata分区、vendor分区、boot分区等;而每一个分区对应的偏移地址可以下载得到该分区的数据。
S302:从所述烧录文件信息中,获取所述待烧录分区对应的偏移地址;
需要说明的是,在分区表中,所包含的多个分区是有顺序之分的,其对应的数据烧录也是有顺序的。这样,首先需要确定出当前的待烧录分区,然后从所述烧录文件信息中来获得该待烧录分区对应的偏移地址。
在一些实施例中,具体地,对于S302来说,所述从所述烧录文件信息中,获取所述待烧录分区对应的偏移地址,可以包括:
S302-1:根据所述分区表中的分区顺序,确定当前的待烧录分区;
S302-2:基于所述待烧录分区,从所述烧录文件信息中确定所述待烧录分区对应的偏移地址。
需要说明的是,烧录器可以根据分区表中的分区顺序,依次来确定每个待烧录分区对应的偏移地址,从而读取出该待烧录分区的数据。也就是说,根据分区表中的分区顺序,在确定出当前的待烧录分区之后,假定当前的待烧录分区为system分区,那么可以得到system分区对应的偏移地址,从而能够进一步获得system分区的数据。
S303:基于所述待烧录分区对应的偏移地址,获取所述待烧录分区的数据;
需要说明的是,每一个待烧录分区的数据,可以位于烧录文件(比如phone.ofp)中待烧录分区对应的偏移地址处,可以根据该偏移地址来下载得到待烧录分区的数据。
在一些实施例中,具体地,对于S303来说,所述基于所述待烧录分区对应的偏移地址,获取所述待烧录分区的数据,可以包括:
S303-1:从所述烧录文件信息中,获取所述待烧录分区的长度;
S303-2:根据所述待烧录分区对应的偏移地址以及所述待烧录分区的长度,确定所述待烧录分区对应的起始地址和结束地址,将所述起始地址和所述结束地址之间的数据确定为所述待烧录分区的数据。
需要说明的是,从烧录文件信息中,除了可以获取到分区表和每一个分区对应的偏移地址之外,还可以获取到每一个分区的长度。
这样,假定当前的待烧录分区为system分区,那么可以获取到system分区对应的偏移地址以及system分区的长度,如此根据system分区对应的偏移地址以及system分区的长度,可以确定出system分区对应的起始地址和结束地址,从而将烧录文件(比如phone.ofp)中system分区对应的起始地址和结束地址之间区域所包含的数据,作为待烧录分区的数据。
进一步地,在得到待烧录分区的数据之后,还可以通过对待烧录分区的数据进行虚拟划分,以得到N个数据块。因此,在一些实施例中,S201之后,该方法还可以包括:
对所述待烧录分区的数据进行虚拟划分,得到所述N个数据块。
需要说明的是,为了更好地将待烧录分区的数据烧录到终端设备中,可以将待烧录分区的数据进行虚拟划分,以得到N个数据块;其中,N为大于等于2的正整数。
还需要说明的是,假定待烧录分区的数据的长度用L0表示,每个数据块的长度为预设长度,可以用L表示,那么L=(1/N)×L0。这里,预设长度的取值可以为16Mb,但是本申请实施例不作具体限定。
示例性地,假定当前的待烧录分区为system分区,在获取到system分区的数据之后,对其进行虚拟划分,可以得到N个数据块,比如ABABAB…数据块,而且每个数据块的大小为16Mb。这样,针对N个数据块,利用计算机设备的双内存机制,可以将从计算机设备的硬盘中读取数据块和将数据块发送到终端设备进行并行处理,如此弥补了从硬盘读取数据慢的问题,节省了烧录时间,从而提高了烧录速度。
本申请的又一实施例中,针对N个数据块中第i数据块和第i+1数据块,在检测到第i数据块对应的第一线程结束之前,还需要判断第i数据块对应的第一线程是否结束;如果没有结束,仍然需要继续执行第i数据块对应的第一线程。因此,在一些实施例中,参见图4,其示出了本申请实施例提供的又一种终端设备的刷机方法的流程示意图。如图4所示,对于S202来说,在检测到第i数据块对应的第一线程结束之前,该方法还可以包括:
S401:检测所述第i数据块对应的第一线程是否结束;
S402:当检测到所述第i数据块对应的第一线程没有结束时,继续执行所述第i数据块对应的第一线程;其中,所述第i数据块对应的第一线程为从计算机设备的硬盘读取所述第i数据块到第一内存区域。
需要说明的是,在步骤S401之后,当检测到所述第i数据块对应的第一线程没有结束时,执行步骤S402;当检测到所述第i数据块对应的第一线程结束时,执行步骤S202。
这样,针对第i数据块,通过检测第i数据块从计算机设备的硬盘读取到第一内存区域是否结束;当第i数据块从计算机设备的硬盘还没有全部读取到第一内存区域时,表明了第i数据块对应的第一线程还没有结束,这时候执行步骤S402,即继续执行第i数据块对应的第一线程;当第i数据块从计算机设备的硬盘全部读取到第一内存区域时,表明了第i数据块对应的第一线程已经结束,这时候执行步骤S202,即控制第i数据块对应的第二线程和第i+1数据块对应的第一线程并行处理,此时可以同时启动第i数据块对应的第二线程和第i+1数据块对应的第一线程。
进一步地,在一些实施例中,在同时启动第i数据块对应的第二线程和第i+1数据块对应的第一线程之后,对于S203来说,该步骤可以包括S403至S408。具体如下,
S403:检测第i数据块对应的第二线程是否结束;
S404:当检测到所述第i数据块对应的第二线程没有结束时,继续执行所述第i数据块对应的第二线程;其中,所述第i数据块对应的第二线程为从第一内存区域发送所述第i数据块到终端设备;
S405:当检测到第i数据块对应的第二线程结束时,检测第i+1数据块对应的第一线程是否结束;
S406:当检测第i+1数据块对应的第一线程没有结束时,继续执行所述第i+1数据块对应的第一线程;其中,所述第i+1数据块对应的第一线程为从计算机设备的硬盘读取所述第i+1数据块到第二内存区域;
S407:当检测到第i+1数据块对应的第一线程结束时,反转标志位;其中,所述标志位用于确定待发送的数据块是来自于第一内存区域或第二内存区域;
S408:基于反转后的标志位,启动第i+1数据块对应的第二线程,并同时启动下一组相邻的数据块对应的第一线程;其中,所述第i+1数据块对应的第二线程为从第二内存区域发送所述第i+1数据块到终端设备。
需要说明的是,标志位可以用于确定待发送的数据块是来自于第一内存区域或第二内存区域。其中,标志位可以用0或1表示,也可以用True或False表示,甚至还可以用其它数字、字母表示,本申请实施例不作具体限定。
假定标志位为0,此时表明了数据块是由第一内存区域向终端设备发送,即待发送的数据块来自于第一内存区域;那么通过反转标志位,反转后的标志位为1,此时表明了数据块是由第二内存区域向终端设备发送,即待发送的数据块来自于第二内存区域;或者,假定标志位为True,此时表明了数据块是由第一内存区域向终端设备发送,即待发送的数据块来自于第一内存区域;那么通过反转标志位,反转后的标志位为False,此时表明了数据块是由第二内存区域向终端设备发送,即待发送的数据块来自于第二内存区域。
这样,在同时启动第i数据块对应的第二线程和第i+1数据块对应的第一线程之后,首先需要检测第i数据块对应的第二线程是否结束;当第i数据块从第一内存区域还没有全部发送到终端设备时,表明了第i数据块对应的第二线程还没有结束,这时候执行步骤S404,即继续执行第i数据块对应的第二线程;当第i数据块从第一内存区域全部发送到终端设备时,表明了第i数据块对应的第二线程已经结束,即第i数据块已经烧录到终端设备中,这时候执行步骤S405,即检测第i+1数据块对应的第一线程是否结束;当第i+1数据块从计算机设备的硬盘还没有全部读取到第二内存区域时,表明了第i+1数据块对应的第一线程还没有结束,这时候执行步骤S406,即继续执行第i+1数据块对应的第一线程;当第i+1数据块从计算机设备的硬盘全部读取到第二内存区域时,表明了第i+1数据块对应的第一线程已经结束,这时候执行步骤S207,即反转标志位,启动第i+1数据块对应的第二线程,并同时启动下一组相邻的数据块对应的第一线程。这样,按照上述的操作进行循环,直到最后一个数据块(即第N数据块)对应的第二线程结束,意味着已经将待烧录分区的数据完全烧录到终端设备中。
参见图5,其示出了本申请实施例提供的一种终端设备的改进刷机方案的流程示意图。如图5所示,在该改进刷机方案50中,计算机设备510除了包括有硬盘5101之外,该计算机设备510为双内存机制,该双内存包括第一内存区域5102和第二内存区域5103,且第一内存区域5102和第二内存区域5103的状态同步;而终端设备520包括存储器5201;其中,计算机设备510和终端设备520之间通过USB数据线连接,而且在计算机510和终端设备520之间还连接有烧录器(图5中未示出),利用烧录器可以将计算机设备510的硬盘5101中所放置的烧录文件写入或烧录到终端设备520的存储器5201中。这里,烧录文件可以虚拟划分为多个数据块,比如将烧录文件划分为ABAB…等多个数据块,然后将每个数据块依次烧录到终端设备的存储器5201中。
基于图5所示的改进刷机方案50,利用烧录器,针对多个数据块中的每两个相邻数据块(比如A数据块和B数据块),首先将A数据块从计算机设备510的硬盘5101读取到第一内存区域5102,当检测到A数据块从计算机设备510的硬盘5101完全读取到第一内存区域5102时,这时候可以控制A数据块对应的第二线程和B数据块对应的第一线程并行处理,即同时启动将A数据块从第一内存区域5102发送到终端设备520以及将B数据块从计算机设备510的硬盘5101读取到第二内存区域5103,在图5中并行处理的两个箭头用虚线表示;当检测到第i数据块对应的第二线程和第i+1数据块对应的第一线程都结束时,这时候可以控制第i+1数据块对应的第二线程和下一组相邻的数据块对应的第一线程并行处理,即同时启动将第i+1数据块对应的第二线程从第二内存区域5103发送到终端设备520以及将下一组相邻的数据块从计算机设备510的硬盘5101读取到第二内存区域5103,在图5中并行处理的两个箭头用实线表示;然后按照上述的操作进行循环,直到将这N个数据块全部写入到存储器5201中。在该改进刷机方案50的处理过程中,从计算机设备的硬盘中读取数据块和将数据块发送到终端设备为并行处理,如此弥补了从硬盘读取数据慢的问题。尤其是烧录文件位于远程计算机上,这样从远程计算机下载烧录文件的数据到本地计算机的内存与将烧录文件的数据发送到终端设备并行执行,可以克服由于网络速度慢而导致刷机时间长的问题。这时候当网络速度慢于发送速度或烧录速度时,网络下载烧录文件的时长就是终端设备的刷机总时长;当网络速度快于发送速度或烧录速度时,发送烧录文件的时长就是终端设备的刷机总时长,这样完全节省了网络下载数据的时间,从而加快了烧录速度。
示例性地,假定待烧录分区的数据包括2个数据块(用A数据块和B数据块表示),每个数据块的大小为16Mb。首先启动A数据块对应的读取线程,将A数据块由计算机设备的硬盘读取到第一内存区域;如果检测到A数据块由计算机设备的硬盘全部读取到第一内存区域时,启动A数据块对应的烧录线程,将A数据块经过USB数据线向终端设备发送,同时启动B数据块对应的读取线程,将B数据块由计算机设备的硬盘读取到第二内存区域;其中,每个数据块的大小为16Mb,而烧录线程中每次只能发送2Mb数据到终端设备,这样就需要8次才能够完成A数据块全部发送到终端设备。当判断A数据块全部发送到终端设备之后,检测B数据块是否由计算机设备的硬盘全部读取到第二内存区域;如果检测到B数据块由计算机设备的硬盘全部读取到第二内存区域时,启动B数据块对应的烧录线程,将B数据块经过USB数据线向终端设备发送;这样当待烧录分区的数据全部发送到终端设备时,也就意味着待烧录分区的数据已经全部烧录到终端设备的存储器中。假定待烧录分区的数据包括3个数据块,如果检测到B数据块由计算机设备的硬盘全部读取到第二内存区域时,启动B数据块对应的烧录线程,同时启动第三数据块从计算机设备的硬盘读取到第一内存区域,并且在第三数据块从计算机设备的硬盘全部读取到第一内存区域后,启动第三数据块对应的第二线程,将第三数据块烧录到终端设备中;这样,假定待烧录分区的数据包括4个或4个以上的数据块,按照上述的操作进行循环,直到最后一个数据块完全烧录到终端设备中。如此,利用计算机设备的双内存机制(包括第一内存区域和第二内存区域)以及预读取功能,可以将从计算机设备的硬盘中读取数据块和将数据块发送到终端设备进行并行处理,如此弥补了从硬盘读取数据慢的问题,节省了烧录时间。
本实施例提供了一种终端设备的刷机方法,通过上述实施例对前述实施例的具体实现进行了详细阐述,从中可以看出,利用计算机设备的双内存机制(包括第一内存区域和第二内存区域)以及预读取功能,可以将从计算机设备的硬盘中读取数据块和将数据块发送到终端设备进行并行处理,如此弥补了从硬盘读取数据慢的问题,节省了烧录时间,从而不仅提高了烧录速度,而且还提高了终端设备的开发和生产效率。
本申请的再一实施例中,基于前述实施例相同的发明构思,参见图6,其示出了本申请实施例提供的一种终端设备的刷机装置60的组成结构示意图。如图6所示,终端设备的刷机装置60可以包括获取单元601、检测单元602、控制单元603和烧录单元604,其中,
所述获取单元601,配置为获取待烧录分区的数据;其中,所述待烧录分区的数据包括N个数据块,N为大于等于2的正整数;
所述控制单元603,配置为针对相邻的第i数据块和第i+1数据块,在所述检测单元602检测到第i数据块对应的第一线程结束后,控制第i数据块对应的第二线程和第i+1数据块对应的第一线程并行处理;
所述控制单元603,还配置为当检测到第i数据块对应的第二线程和第i+1数据块对应的第一线程都结束时,启动第i+1数据块对应的第二线程,并同时启动下一组相邻的数据块对应的第一线程;其中,所述第一线程为从计算机设备的硬盘中读取第i数据块到第一内存区域或读取第i+1数据块到第二内存区域,所述第二线程为从第一内存区域发送第i数据块到终端设备或从第二内存区域发送第i+1数据块到终端设备,i为大于等于1且小于等于N-1的正整数;
所述烧录单元604,配置为当检测到第N数据块对应的第二线程结束时,将所述待烧录分区的数据全部烧录到终端设备中,以实现对所述终端设备的刷机。
在上述方案中,参见图6,该终端设备的刷机装置60还可以包括读取单元605,配置为读取烧录文件信息;其中,所述烧录文件信息包括分区表以及每一个分区对应的偏移地址;
所述获取单元601,还配置为从所述烧录文件信息中,获取所述待烧录分区对应的偏移地址;以及基于所述待烧录分区对应的偏移地址,获取所述待烧录分区的数据。
在上述方案中,参见图6,该终端设备的刷机装置60还可以包括确定单元606,配置为根据所述分区表中的分区顺序,确定当前的待烧录分区;以及基于所述待烧录分区,从所述烧录文件信息中确定所述待烧录分区对应的偏移地址。
在上述方案中,所述获取单元601,还配置为从所述烧录文件信息中,获取所述待烧录分区的长度;
所述确定单元606,还配置为根据所述待烧录分区对应的偏移地址以及所述待烧录分区的长度,确定所述待烧录分区对应的起始地址和结束地址,将所述起始地址和所述结束地址之间的数据确定为所述待烧录分区的数据。
在上述方案中,参见图6,该终端设备的刷机装置60还可以包括划分单元607,配置为对所述待烧录分区的数据进行虚拟划分,得到所述N个数据块。
在上述方案中,所述检测单元602,还配置为检测所述第i数据块对应的第一线程是否结束;
所述控制单元603,还配置为当检测到所述第i数据块对应的第一线程没有结束时,继续执行所述第i数据块对应的第一线程;其中,所述第i数据块对应的第一线程为从计算机设备的硬盘读取所述第i数据块到第一内存区域。
在上述方案中,所述检测单元602,还配置为检测第i数据块对应的第二线程是否结束;以及在检测到第i数据块对应的第二线程结束后,检测第i+1数据块对应的第一线程是否结束;其中,所述第i数据块对应的第二线程为从第一内存区域发送所述第i数据块到终端设备,所述第i+1数据块对应的第一线程为从计算机设备的硬盘读取所述第i+1数据块到第二内存区域;
所述控制单元603,还配置为当检测到第i+1数据块对应的第一线程结束时,反转标志位;其中,所述标志位用于确定待发送的数据块是来自于第一内存区域或第二内存区域;以及基于反转后的标志位,启动第i+1数据块对应的第二线程,并同时启动下一组相邻的数据块对应的第一线程;其中,所述第i+1数据块对应的第二线程为从第二内存区域发送所述第i+1数据块到终端设备。
可以理解地,在本实施例中,“单元”可以是部分电路、部分处理器、部分程序或软件等等,当然也可以是模块,还可以是非模块化的。而且在本实施例中的各组成部分可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
所述集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储在一个计算机可读取存储介质中,基于这样的理解,本实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或processor(处理器)执行本实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
因此,本实施例提供了一种计算机存储介质,该计算机存储介质存储有终端设备的刷机程序,所述终端设备的刷机程序被至少一个处理器执行时实现前述实施例中任一项所述的方法。
基于上述终端设备的刷机装置60的组成以及计算机存储介质,参见图7,其示出了本申请实施例提供的终端设备的刷机装置60的具体硬件结构,可以包括:通信接口701、存储器702和处理器703;各个组件通过总线系统704耦合在一起。可理解,总线系统704用于实现这些组件之间的连接通信。总线系统704除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图7中将各种总线都标为总线系统704。其中,通信接口701,用于在与其他外部网元之间进行收发信息过程中,信号的接收和发送;
存储器702,用于存储能够在处理器703上运行的计算机程序;
处理器703,用于在运行所述计算机程序时,执行:
获取待烧录分区的数据;其中,所述待烧录分区的数据包括N个数据块,N为大于等于2的正整数;
针对相邻的第i数据块和第i+1数据块,在检测到第i数据块对应的第一线程结束后,控制第i数据块对应的第二线程和第i+1数据块对应的第一线程并行处理;
当检测到第i数据块对应的第二线程和第i+1数据块对应的第一线程都结束时,启动第i+1数据块对应的第二线程,并同时启动下一组相邻的数据块对应的第一线程;其中,所述第一线程为从计算机设备的硬盘中读取第i数据块到第一内存区域或读取第i+1数据块到第二内存区域,所述第二线程为从第一内存区域发送第i数据块到终端设备或从第二内存区域发送第i+1数据块到终端设备,i为大于等于1且小于等于N-1的正整数;
当检测到第N数据块对应的第二线程结束时,将所述待烧录分区的数据全部烧录到终端设备中,以实现对所述终端设备的刷机。
可以理解,本申请实施例中的存储器702可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data RateSDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(DirectRambus RAM,DRRAM)。本文描述的系统和方法的存储器702旨在包括但不限于这些和任意其它适合类型的存储器。
而处理器703可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器703中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器703可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器702,处理器703读取存储器702中的信息,结合其硬件完成上述方法的步骤。
可以理解的是,本文描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(ApplicationSpecific Integrated Circuits,ASIC)、数字信号处理器(Digital Signal Processing,DSP)、数字信号处理设备(DSP Device,DSPD)、可编程逻辑设备(Programmable LogicDevice,PLD)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、通用处理器、控制器、微控制器、微处理器、用于执行本申请所述功能的其它电子单元或其组合中。
对于软件实现,可通过执行本文所述功能的模块(例如过程、函数等)来实现本文所述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。
可选地,作为另一个实施例,处理器703还配置为在运行所述计算机程序时,执行前述实施例中任一项所述的方法。
参见图8,其示出了本申请实施例提供的一种终端设备的刷机系统的组成结构示意图。如图8所示,该系统80包括有烧录器801、计算机设备802和终端设备803;其中,计算机设备802为双内存机制,包括有硬盘8021、第一内存区域8022和第二内存区域8023,且第一内存区域8022和第二内存区域8023的状态同步,终端设备包括有存储器8031,烧录器801至少包括有如前述实施例中任一项所述的装置60。这样,利用该系统80,烧录器801可以将硬盘8021中所存储的烧录文件写入到终端设备803的存储器8031中,以实现对终端设备803的刷机。
需要说明的是,在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本申请所提供的几个方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。
本申请所提供的几个产品实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的产品实施例。
本申请所提供的几个方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (11)
1.一种终端设备的刷机方法,其特征在于,所述方法包括:
获取待烧录分区的数据;其中,所述待烧录分区的数据包括N个数据块,N为大于等于2的正整数;
针对相邻的第i数据块和第i+1数据块,在检测到第i数据块对应的第一线程结束后,控制第i数据块对应的第二线程和第i+1数据块对应的第一线程并行处理;
当检测到第i数据块对应的第二线程和第i+1数据块对应的第一线程都结束时,启动第i+1数据块对应的第二线程,并同时启动下一组相邻的数据块对应的第一线程;其中,所述第一线程为从计算机设备的硬盘中读取第i数据块到第一内存区域或读取第i+1数据块到第二内存区域,所述第二线程为从第一内存区域发送第i数据块到终端设备或从第二内存区域发送第i+1数据块到终端设备,i为大于等于1且小于等于N-1的正整数;
当检测到第N数据块对应的第二线程结束时,将所述待烧录分区的数据全部烧录到终端设备中,以实现对所述终端设备的刷机。
2.根据权利要求1所述的方法,其特征在于,所述获取待烧录分区的数据,包括:
读取烧录文件信息;其中,所述烧录文件信息包括分区表以及每一个分区对应的偏移地址;
从所述烧录文件信息中,获取所述待烧录分区对应的偏移地址;
基于所述待烧录分区对应的偏移地址,获取所述待烧录分区的数据。
3.根据权利要求2所述的方法,其特征在于,所述从所述烧录文件信息中,获取所述待烧录分区对应的偏移地址,包括:
根据所述分区表中的分区顺序,确定当前的待烧录分区;
基于所述待烧录分区,从所述烧录文件信息中确定所述待烧录分区对应的偏移地址。
4.根据权利要求2所述的方法,其特征在于,所述基于所述待烧录分区对应的偏移地址,获取所述待烧录分区的数据,包括:
从所述烧录文件信息中,获取所述待烧录分区的长度;
根据所述待烧录分区对应的偏移地址以及所述待烧录分区的长度,确定所述待烧录分区对应的起始地址和结束地址,将所述起始地址和所述结束地址之间的数据确定为所述待烧录分区的数据。
5.根据权利要求1至4任一项所述的方法,其特征在于,在所述获取待烧录分区的数据之后,所述方法还包括:
对所述待烧录分区的数据进行虚拟划分,得到所述N个数据块。
6.根据权利要求1所述的方法,其特征在于,在检测到第i数据块对应的第一线程结束之前,所述方法还包括:
检测所述第i数据块对应的第一线程是否结束;
当检测到所述第i数据块对应的第一线程没有结束时,继续执行所述第i数据块对应的第一线程;其中,所述第i数据块对应的第一线程为从计算机设备的硬盘读取所述第i数据块到第一内存区域。
7.根据权利要求1所述的方法,其特征在于,所述当检测到第i数据块对应的第二线程和第i+1数据块对应的第一线程都结束时,启动第i+1数据块对应的第二线程,并同时启动下一组相邻的数据块对应的第一线程,包括:
检测第i数据块对应的第二线程是否结束;
在检测到第i数据块对应的第二线程结束后,检测第i+1数据块对应的第一线程是否结束;其中,所述第i数据块对应的第二线程为从第一内存区域发送所述第i数据块到终端设备,所述第i+1数据块对应的第一线程为从计算机设备的硬盘读取所述第i+1数据块到第二内存区域;
当检测到第i+1数据块对应的第一线程结束时,反转标志位;其中,所述标志位用于确定待发送的数据块是来自于第一内存区域或第二内存区域;
基于反转后的标志位,启动第i+1数据块对应的第二线程,并同时启动下一组相邻的数据块对应的第一线程;其中,所述第i+1数据块对应的第二线程为从第二内存区域发送所述第i+1数据块到终端设备。
8.一种终端设备的刷机装置,其特征在于,所述装置包括获取单元、检测单元、控制单元和烧录单元,其中,
所述获取单元,配置为获取待烧录分区的数据;其中,所述待烧录分区的数据包括N个数据块,N为大于等于2的正整数;
所述控制单元,配置为针对相邻的第i数据块和第i+1数据块,在所述检测单元检测到第i数据块对应的第一线程结束后,控制第i数据块对应的第二线程和第i+1数据块对应的第一线程并行处理;
所述控制单元,还配置为当检测到第i数据块对应的第二线程和第i+1数据块对应的第一线程都结束时,启动第i+1数据块对应的第二线程,并同时启动下一组相邻的数据块对应的第一线程;其中,所述第一线程为从计算机设备的硬盘中读取第i数据块到第一内存区域或读取第i+1数据块到第二内存区域,所述第二线程为从第一内存区域发送第i数据块到终端设备或从第二内存区域发送第i+1数据块到终端设备,i为大于等于1且小于等于N-1的正整数;
所述烧录单元,配置为当检测到第N数据块对应的第二线程结束时,将所述待烧录分区的数据全部烧录到终端设备中,以实现对所述终端设备的刷机。
9.一种终端设备的刷机装置,其特征在于,所述装置包括存储器和处理器;其中,
所述存储器,配置为存储能够在所述处理器上运行的计算机程序;
所述处理器,配置为在运行所述计算机程序时,执行如权利要求1至7任一项所述的方法。
10.一种计算机存储介质,其特征在于,所述计算机存储介质存储有终端设备的刷机程序,所述终端设备的刷机程序被至少一个处理器执行时实现如权利要求1至7任一项所述的方法。
11.一种系统,其特征在于,所述系统包括烧录器、计算机设备和终端设备,所述烧录器至少包括如权利要求8至9任一项所述的装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910690870.9A CN110399143A (zh) | 2019-07-29 | 2019-07-29 | 终端设备的刷机方法、装置、计算机存储介质和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910690870.9A CN110399143A (zh) | 2019-07-29 | 2019-07-29 | 终端设备的刷机方法、装置、计算机存储介质和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110399143A true CN110399143A (zh) | 2019-11-01 |
Family
ID=68326516
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910690870.9A Pending CN110399143A (zh) | 2019-07-29 | 2019-07-29 | 终端设备的刷机方法、装置、计算机存储介质和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110399143A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113849194A (zh) * | 2021-08-20 | 2021-12-28 | 荣耀终端有限公司 | 烧录方法和终端设备 |
CN115543361A (zh) * | 2022-11-30 | 2022-12-30 | 北京志翔科技股份有限公司 | 文件烧录方法、装置、电子设备和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101692217A (zh) * | 2009-09-16 | 2010-04-07 | 东莞市步步高教育电子产品有限公司 | 一种芯片烧录方法及其装置 |
CN104102530A (zh) * | 2014-07-30 | 2014-10-15 | 广东小天才科技有限公司 | 一种提高电子产品烧录速度的方法和系统 |
CN106933603A (zh) * | 2015-12-29 | 2017-07-07 | 深圳市博巨兴实业发展有限公司 | 一种芯片烧录的方法、装置和微控制器 |
CN107977343A (zh) * | 2017-11-22 | 2018-05-01 | 广东工业大学 | 一种数据转换系统 |
CN109460239A (zh) * | 2017-09-06 | 2019-03-12 | 深圳市中兴微电子技术有限公司 | 一种多单板烧录的方法、系统及烧录工具 |
-
2019
- 2019-07-29 CN CN201910690870.9A patent/CN110399143A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101692217A (zh) * | 2009-09-16 | 2010-04-07 | 东莞市步步高教育电子产品有限公司 | 一种芯片烧录方法及其装置 |
CN104102530A (zh) * | 2014-07-30 | 2014-10-15 | 广东小天才科技有限公司 | 一种提高电子产品烧录速度的方法和系统 |
CN106933603A (zh) * | 2015-12-29 | 2017-07-07 | 深圳市博巨兴实业发展有限公司 | 一种芯片烧录的方法、装置和微控制器 |
CN109460239A (zh) * | 2017-09-06 | 2019-03-12 | 深圳市中兴微电子技术有限公司 | 一种多单板烧录的方法、系统及烧录工具 |
CN107977343A (zh) * | 2017-11-22 | 2018-05-01 | 广东工业大学 | 一种数据转换系统 |
Non-Patent Citations (1)
Title |
---|
沈祥玖: "《操作系统原理及其应用》", 高等教育出版社 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113849194A (zh) * | 2021-08-20 | 2021-12-28 | 荣耀终端有限公司 | 烧录方法和终端设备 |
CN115543361A (zh) * | 2022-11-30 | 2022-12-30 | 北京志翔科技股份有限公司 | 文件烧录方法、装置、电子设备和存储介质 |
CN115543361B (zh) * | 2022-11-30 | 2024-06-04 | 北京志翔科技股份有限公司 | 文件烧录方法、装置、电子设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102063384B (zh) | 一种java卡利用缓存对编程只读存储器进行读写操作的方法 | |
KR101819014B1 (ko) | 메모리 장치를 관리하기 위한 방법 및 제어기 | |
CN108549556B (zh) | 一种应用程序加速方法、装置、终端及存储介质 | |
KR840001729A (ko) | 디지탈 테스터 국부 메모리 데이타 저장 시스템 | |
CN110399143A (zh) | 终端设备的刷机方法、装置、计算机存储介质和系统 | |
CN108121628B (zh) | 一种读写速度的测试方法、装置及电子设备 | |
EP2382637A1 (en) | Enhanced addressability for serial non-volatile memory | |
KR20100088210A (ko) | 휴대용 단말기에서 내장 대용량 메모리를 이용한 컨텐츠 다운로드 방법 및 장치 | |
CN112835528A (zh) | 脏页刷新方法和装置、电子设备和存储介质 | |
US8250319B2 (en) | Operating an emulated electrically erasable (EEE) memory | |
CN113342276B (zh) | 一种日志保存方法、系统、设备以及介质 | |
CN111666082B (zh) | 一种外设固件加载方法、控制设备及计算机可读存储介质 | |
JP4731325B2 (ja) | 記録媒体、データ処理装置及びデータ処理方法 | |
KR20050076156A (ko) | 플래시 메모리의 데이터 복구 장치 및 방법 | |
US20100106892A1 (en) | Access Methods For Memory Devices And Memory Devices Thereof | |
US20240046720A1 (en) | Vehicle-mounted information processing apparatus and vehicle-mounted information processing method | |
CN112074904B (zh) | 存储器起动电压管理 | |
CN110716923A (zh) | 数据处理方法、装置、节点设备及存储介质 | |
CN111124285B (zh) | 一种固态硬盘数据保持方法、装置、设备、介质 | |
CN111435285B (zh) | 存储卷写数据方法、装置、电子设备及机器可读存储介质 | |
US8443145B2 (en) | Distributed memory usage for a system having multiple integrated circuits each including processors | |
KR100688463B1 (ko) | 물리 메모리의 데이터 기록 및 삭제 방법 | |
JP2003331586A (ja) | データ記憶方法 | |
CN118262776A (zh) | Lpddr的dbi功能测试方法、装置、设备及介质 | |
US20130290603A1 (en) | Emulated electrically erasable memory parallel record 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 |