固件文件匹配方法、装置、电子设备和存储介质与流程

文档序号:27257331发布日期:2021-11-05 20:16阅读:152来源:国知局
固件文件匹配方法、装置、电子设备和存储介质与流程

1.本技术涉及数据处理技术领域,尤其涉及一种固件文件匹配方法、装置、电子设备和存储介质。


背景技术:

2.嵌入式系统往往会配备多种外设和传感器来完成与外界的通信和交互,如配备tp(touch panel,触摸屏)、lcd(liquid crystal display,液晶显示屏)、wifi(wireless fidelity,无线保真)模块、蓝牙模块、codec(coder

decoder,编码解码器)、gps(global positioning system,全球定位系统)、gsensor(accelerometer

sensor,加速度传感)、key(键盘)等。其中,有些外设需要独立的固件才能正常运行,且一个外设可能存在一供、二供的情况,此外,不同外设可能存在型号不同、适配不同、需要的固件也不同的情况,由此可能导致一个外设需要适配多个固件以及固件需要迭代升级的情况发生。
3.传统的做法为,通过项目和外设的某种绑定关系来人为的管控区分固件的唯一性,这将增加很多额外的控制成本和人力投入,且在项目种类较多的情况下很容易发生管控出错的情况。因此,最好的做法为,将一个外设的多个固件文件同时存入文件系统,通过某种匹配关系自动匹配固件对应的唯一文件,无需人为参与,减少成本和降低出错的概率。
4.相关技术中,文件匹配是建立在排序检索的基础上,即首先根据文件的某种特性信息对文件进行排序后再进行文件的匹配,这种方式下,将影响文件匹配的效率。尤其对于嵌入式文件系统而言,由于处理器的能力相对较弱,在文件数量很大的情况下,排序过程非常耗时,严重降低文件的匹配效率。


技术实现要素:

5.本技术旨在至少在一定程度上解决相关技术中的技术问题之一。
6.本技术在于提出一种固件文件匹配方法、装置、电子设备和存储介质,以实现不通过排序,直接从固件文件列表中筛选出匹配的固件文件,可以提升固件文件的匹配效率。
7.本技术第一方面实施例提出了一种固件文件匹配方法,包括:
8.获取匹配参数序列;
9.根据所述匹配参数序列中的首个匹配参数遍历固件文件列表中各个固件文件的文件属性,获取首个候选固件文件的文件名,作为目标文件名;其中,所述候选固件文件的文件属性中包括所述首个匹配参数;
10.依次根据所述固件文件列表中各个非首个候选固件文件的文件属性与所述匹配参数序列的第一匹配情况,以及所述目标文件名对应的文件属性与所述匹配参数序列的第二匹配情况,对所述目标文件名进行更新,至所述目标文件名的第二匹配情况满足匹配条件或者更新处理完成;
11.在更新后的所述目标文件名的第二匹配情况满足所述匹配条件时,确定匹配结果为所述目标文件名对应的固件文件。
12.由此,可以实现不通过排序,直接从固件文件列表中筛选出匹配的固件文件,可以提升固件文件的匹配效率。
13.在本技术实施例的一种可能的实现方式中,所述依次根据所述固件文件列表中各个非首个候选固件文件的文件属性与所述匹配参数序列的第一匹配情况,以及所述目标文件名对应的文件属性与所述匹配参数序列的第二匹配情况,对所述目标文件名进行更新,至所述目标文件名的第二匹配情况满足匹配条件或者更新处理完成,包括:
14.针对所述固件文件列表中的每个非首个候选固件文件,根据所述非首个候选固件文件的文件属性与所述匹配参数序列的第一匹配情况,以及所述目标文件名对应的文件属性与所述匹配参数序列的第二匹配情况,对所述目标文件名进行更新;
15.判断更新后的所述目标文件名的第二匹配情况是否满足所述匹配条件,以及判断是否更新处理完成;
16.在更新后的所述目标文件名的第二匹配情况满足所述匹配条件,或者更新处理完成时,停止对所述目标文件名的更新处理操作;
17.在更新后的所述目标文件名的第二匹配情况未满足所述匹配条件,且更新处理未完成时,对所述固件文件列表中的下一个非首个候选固件文件执行上述步骤。
18.由此,一方面,在更新后的目标文件名的第二匹配情况满足匹配条件,或者更新处理完成时,停止对目标文件名的更新处理操作,可以实现无需对固件文件列表中的下一个非首个候选固件文件执行上述步骤,即无需将固件文件列表中的后续候选固件文件与匹配参数序列进行匹配,可以提升固件文件的匹配效率;另一方面,在更新后的目标文件名的第二匹配情况未满足匹配条件,且更新处理未完成时,对固件文件列表中的下一个非首个候选固件文件执行上述步骤,可以提升目标文件名更新结果的准确性和可靠性,从而可以提升固件文件匹配结果的准确性和可靠性。
19.在本技术实施例的一种可能的实现方式中,所述根据所述非首个候选固件文件的文件属性与所述匹配参数序列的第一匹配情况,以及所述目标文件名对应的文件属性与所述匹配参数序列的第二匹配情况,对所述目标文件名进行更新,包括:
20.依次针对所述匹配参数序列中的每个非首个匹配参数,判断所述目标文件名对应的文件属性和所述非首个候选固件文件的文件属性是否包括所述非首个匹配参数;
21.根据判断结果,对所述目标文件名进行更新。
22.由此,可以实现根据匹配参数序列中的每个匹配参数,判断目标文件名对应的文件属性和非首个候选固件文件的文件属性是否包括对应的匹配参数,根据判断结果,确定是否对目标文件名进行更新,可以提升目标文件名更新结果的准确性和可靠性,从而可以提升固件文件匹配结果的准确性和可靠性。
23.在本技术实施例的一种可能的实现方式中,所述根据判断结果,对所述目标文件名进行更新,包括:
24.在所述非首个候选固件文件的文件属性未包括所述非首个匹配参数且所述目标文件名对应的文件属性未包括所述非首个匹配参数时,继续判断动作;或者,
25.在所述非首个候选固件文件的文件属性未包括所述非首个匹配参数且所述目标文件名对应的文件属性包括所述非首个匹配参数时,停止判断动作且停止此次更新动作;
26.或者,
27.在所述非首个候选固件文件的文件属性包括所述非首个匹配参数,且所述目标文件名对应的文件属性未包括所述非首个匹配参数时,根据所述非首个候选固件文件的文件名对所述目标文件名进行更新,并停止判断动作。
28.由此,可以实现对目标文件名进行动态维护和更新,可以提升匹配结果的准确性和可靠性。
29.在本技术实施例的一种可能的实现方式中,所述匹配参数序列中的匹配参数按照优先级降序排序;
30.或者,
31.所述匹配参数序列中的匹配参数按照优先级升序排序。
32.由此,可以实现根据实际应用需求,将匹配参数序列中的各匹配参数按照优先级升序排序或降序排序,可以提升该方法的灵活性和适用性。
33.在本技术实施例的一种可能的实现方式中,所述匹配参数序列中的匹配参数为,预设的文件属性参数或者所述预设的文件属性参数计算得到的摘要数值。
34.由此,可以实现根据不同方式,生成匹配参数序列中的各匹配参数,可以提升该方法的灵活性和适用性。
35.在本技术实施例的一种可能的实现方式中,在确定匹配结果为所述目标文件名对应的固件文件之后,还包括:
36.将所述目标文件名对应的固件文件的路径以及所述目标文件名,存储到目标位置。
37.由此,可以实现从目标位置,获取目标文件名对应的固件文件的路径以及目标文件名,从而可以基于目标文件名对应的固件文件的路径以及目标文件名,获取到对应的固件文件。
38.在本技术实施例的一种可能的实现方式中,所述匹配条件为,所述目标文件名对应的文件属性包括所述匹配参数序列中的所有匹配参数或者所述匹配参数序列中排序在前的预设数量的匹配参数。
39.由此,可以实现根据实际的应用需求设置匹配条件,可以提升该方法的灵活性和适用性。
40.本技术第二方面实施例提出了一种固件文件匹配装置,包括:
41.获取模块,用于获取匹配参数序列;
42.处理模块,用于根据所述匹配参数序列中的首个匹配参数遍历固件文件列表中各个固件文件的文件属性,获取首个候选固件文件的文件名,作为目标文件名;其中,所述候选固件文件的文件属性中包括所述首个匹配参数;
43.更新模块,用于依次根据所述固件文件列表中各个非首个候选固件文件的文件属性与所述匹配参数序列的第一匹配情况,以及所述目标文件名对应的文件属性与所述匹配参数序列的第二匹配情况,对所述目标文件名进行更新,至所述目标文件名的第二匹配情况满足匹配条件或者更新处理完成;
44.确定模块,用于在更新后的所述目标文件名的第二匹配情况满足所述匹配条件时,确定匹配结果为所述目标文件名对应的固件文件。
45.由此,可以实现不通过排序,直接从固件文件列表中筛选出匹配的固件文件,可以
提升固件文件的匹配效率。
46.在本技术实施例的一种可能的实现方式中,所述更新模块,包括:
47.更新单元,用于针对所述固件文件列表中的每个非首个候选固件文件,根据所述非首个候选固件文件的文件属性与所述匹配参数序列的第一匹配情况,以及所述目标文件名对应的文件属性与所述匹配参数序列的第二匹配情况,对所述目标文件名进行更新;
48.判断单元,用于判断更新后的所述目标文件名的第二匹配情况是否满足所述匹配条件,以及判断是否更新处理完成;
49.停止单元,用于在更新后的所述目标文件名的第二匹配情况满足所述匹配条件,或者更新处理完成时,停止对所述目标文件名的更新处理操作;
50.执行单元,用于在更新后的所述目标文件名的第二匹配情况未满足所述匹配条件,且更新处理未完成时,对所述固件文件列表中的下一个非首个候选固件文件执行上述步骤。
51.由此,一方面,在更新后的目标文件名的第二匹配情况满足匹配条件,或者更新处理完成时,停止对目标文件名的更新处理操作,可以实现无需对固件文件列表中的下一个非首个候选固件文件执行上述步骤,即无需将固件文件列表中的后续候选固件文件与匹配参数序列进行匹配,可以提升固件文件的匹配效率;另一方面,在更新后的目标文件名的第二匹配情况未满足匹配条件,且更新处理未完成时,对固件文件列表中的下一个非首个候选固件文件执行上述步骤,可以提升目标文件名更新结果的准确性和可靠性,从而可以提升固件文件匹配结果的准确性和可靠性。
52.在本技术实施例的一种可能的实现方式中,所述更新单元,具体用于:
53.依次针对所述匹配参数序列中的每个非首个匹配参数,判断所述目标文件名对应的文件属性和所述非首个候选固件文件的文件属性是否包括所述非首个匹配参数;
54.根据判断结果,对所述目标文件名进行更新。
55.由此,可以实现根据匹配参数序列中的每个匹配参数,判断目标文件名对应的文件属性和非首个候选固件文件的文件属性是否包括对应的匹配参数,根据判断结果,确定是否对目标文件名进行更新,可以提升目标文件名更新结果的准确性和可靠性,从而可以提升固件文件匹配结果的准确性和可靠性。
56.在本技术实施例的一种可能的实现方式中,所述更新单元,具体用于:
57.在所述非首个候选固件文件的文件属性未包括所述非首个匹配参数且所述目标文件名对应的文件属性未包括所述非首个匹配参数时,继续判断动作;或者,
58.在所述非首个候选固件文件的文件属性未包括所述非首个匹配参数且所述目标文件名对应的文件属性包括所述非首个匹配参数时,停止判断动作且停止此次更新动作;
59.或者,
60.在所述非首个候选固件文件的文件属性包括所述非首个匹配参数,且所述目标文件名对应的文件属性未包括所述非首个匹配参数时,根据所述非首个候选固件文件的文件名对所述目标文件名进行更新,并停止判断动作。
61.由此,可以实现对目标文件名进行动态维护和更新,可以提升匹配结果的准确性和可靠性。
62.在本技术实施例的一种可能的实现方式中,所述匹配参数序列中的匹配参数按照
优先级降序排序;
63.或者,
64.所述匹配参数序列中的匹配参数按照优先级升序排序。
65.由此,可以实现根据实际应用需求,将匹配参数序列中的各匹配参数按照优先级升序排序或降序排序,可以提升该方法的灵活性和适用性。
66.在本技术实施例的一种可能的实现方式中,所述匹配参数序列中的匹配参数为,预设的文件属性参数或者所述预设的文件属性参数计算得到的摘要数值。
67.由此,可以实现根据不同方式,生成匹配参数序列中的各匹配参数,可以提升该方法的灵活性和适用性。
68.在本技术实施例的一种可能的实现方式中,所述装置,还包括:
69.存储模块,用于将所述目标文件名对应的固件文件的路径以及所述目标文件名,存储到目标位置。
70.由此,可以实现从目标位置,获取目标文件名对应的固件文件的路径以及目标文件名,从而可以基于目标文件名对应的固件文件的路径以及目标文件名,获取到对应的固件文件。
71.在本技术实施例的一种可能的实现方式中,所述匹配条件为,所述目标文件名对应的文件属性包括所述匹配参数序列中的所有匹配参数或者所述匹配参数序列中排序在前的预设数量的匹配参数。
72.由此,可以实现根据实际的应用需求设置匹配条件,可以提升该方法的灵活性和适用性。
73.本技术第三方面实施例提出了一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如本技术第一方面实施例提出的固件文件匹配方法。
74.本技术第四方面实施例提出了一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本技术第一方面实施例提出的固件文件匹配方法。
75.本技术第五方面实施例提出了一种计算机程序产品,当所述计算机程序产品中的指令处理器执行时,执行如本技术第一方面实施例提出的固件文件匹配方法。
76.本技术附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本技术的实践了解到。
附图说明
77.本技术上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
78.图1为本技术实施例一所提供的固件文件匹配方法的流程示意图;
79.图2为本技术实施例二所提供的固件文件匹配方法的流程示意图;
80.图3为本技术实施例三所提供的固件文件匹配方法的流程示意图;
81.图4为本技术实施例四所提供的固件文件匹配方法的流程示意图;
82.图5为本技术实施例五所提供的固件文件匹配装置的结构示意图;
83.图6示出了适于用来实现本技术实施方式的示例性电子设备的框图。
具体实施方式
84.下面详细描述本技术的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本技术,而不能理解为对本技术的限制。
85.嵌入式系统往往会配备多种外设和传感器来完成与外界的通信和交互,而有些外设需要独立的固件才能正常运行,且一个外设可能存在一供、二供的情况,此外,不同外设可能存在型号不同、适配不同、需要的固件也不同的情况,由此可能导致一个外设需要适配多个固件以及固件需要迭代升级的情况发生。
86.传统的做法为,通过项目和外设的某种绑定关系来人为的管控区分固件的唯一性,即通过人为管控系统配置外设与项目的关系,加之一些简单的绑定关系,比如型号、耦合器件相关性绑定等,这样就存在管控复杂、成本高、容易疏漏和出错、后期扩展困难等问题。
87.因此,最好的做法为,将一个外设的多个固件文件同时存入文件系统,通过某种匹配关系自动匹配固件对应的唯一文件,无需人为参与,减少成本和降低出错的概率。即,在一个外设存在多个型号、多个固件的情况下,首先需要做文件的统一管理,将多个固件文件存入文件系统或存储系统,对应的外设模块控制器就需要能够识别与当前所挂接的外设唯一匹配的固件,因此就需要在多个文件中找到唯一匹配外设的固件文件。
88.在文件系统中存在多个文件时,可以通过匹配方法找到固件对应的唯一文件,其中,匹配过程需要涉及到以下几点:
89.1、文件存储;
90.2、文件查找;
91.3、文件匹配;
92.其中,文件存储和文件查找可以通过现有文件系统的操作技术来直接完成,而文件匹配则有不同的方式和方法,效率和灵活性各有不同。
93.具体地,现有文件匹配方法是建立在文件排序的基础上,不同的存储介质使用的检索匹配方法不同,且不同的应用领域使用的检索匹配方法也不同。其中,在嵌入式领域,由于处理器的能力相对较弱,一般使用数值比较的方法做简单的等于或者不等于判断,不便于应对复杂的应用场景。
94.其中,文件排序是根据文件的某种特性信息对文件进行排序,如根据文件类型、文件大小、文件修改时间等特性信息,对文件进行排序。然而不论使用什么方式排序,都避不开排序的这一动作,这将影响文件匹配的效率。也就是说,排序算法需要获取文件的上述特性信息,并且排序算法依赖不同的处理器的运行速度也有所不同,处理器的运行速度的差异层次不齐,相关几倍、几十倍、几千倍、几万倍都是常有,而以上因素均会在文件匹配过程降低匹配效率。
95.在嵌入式领域,由于处理器的能力相对较弱,在文件数量很大的情况下,排序算法自身的效率局限将愈发明显,而且并不是所有的文件匹配一定需要排序,因此一种快速匹配文件的方法显得迫切需要。
96.针对上述问题,本技术提出一种固件文件匹配方法、装置、电子设备和存储介质。
97.下面参考附图描述本技术实施例的固件文件匹配方法、装置、电子设备和存储介质。
98.图1为本技术实施例一所提供的固件文件匹配方法的流程示意图。
99.本技术实施例以该固件文件匹配方法被配置于固件文件匹配装置中来举例说明,该固件文件匹配装置可以应用于任一电子设备中,以使该电子设备可以执行固件文件匹配功能。
100.其中,电子设备可以为任一具有计算能力的设备,例如可以为个人电脑(personal computer,简称pc)、移动终端、服务器等,移动终端例如可以为手机、平板电脑、个人数字助理、穿戴式设备等具有各种操作系统、触摸屏和/或显示屏的硬件设备。
101.如图1所示,该固件文件匹配方法可以包括以下步骤:
102.步骤101,获取匹配参数序列。
103.在本技术实施例中,匹配参数序列可以包括至少一个匹配参数,例如标记匹配参数序列包括的匹配参数的个数为n,其中,n为大于或者等于1的整数,n的个数可以根据实际的应用需求进行设置。
104.在本技术实施例中,匹配参数序列中的每个匹配参数也可以根据实际的应用需求进行设置,比如,可以根据设备所挂接的外设设置。可选地,匹配参数可以具有优先级属性,每个匹配参数的优先级可以根据应用需求进行设置,比如,匹配参数的优先级可以根据匹配参数的取值进行设置。
105.作为一种示例,匹配参数的优先级可以与匹配参数的取值正相关,即匹配参数的取值越大,其对应的优先级越高,反之,匹配参数的取值越小,其对应的优先级越低。
106.应当理解的是,上述举例仅是示例性说明,本技术并不限于此,比如,匹配参数的优先级还可以与匹配参数的取值负相关,即匹配参数的取值越小,其对应的优先级越高,反之,匹配参数的取值越大,其对应的优先级越低。
107.举例而言,当匹配参数为文件属性参数,比如文件头中的部分字符时,可以根据各匹配参数的取值情况,设置各匹配参数对应的优先级。比如,优先级可以通过取值大优先级大,或者,取值小优先级大这两种方式设置。
108.在本技术实施例中,匹配参数序列中的各匹配参数可以按照优先级降序排序,或者,匹配参数序列中的匹配参数也可以按照优先级升序排序,本技术对此并不作限制。
109.在本技术实施例的一种可能的实现方式中,在确定指定外设(比如设备当前所挂接的外设)对应的固件文件之前,可以根据指定外设,设置对应的匹配参数序列,从而本技术中,可以获取预先设置的匹配参数序列。其中,对于不同的外设或不同型号的外设,对应的匹配参数序列可以不同,或者也可以相同,本技术对此并不作限制。
110.步骤102,根据匹配参数序列中的首个匹配参数遍历固件文件列表中各个固件文件的文件属性,获取首个候选固件文件的文件名,作为目标文件名;其中,候选固件文件的文件属性中包括首个匹配参数。
111.在本技术实施例中,目标文件名,用于确定指定外设对应的固件文件。
112.在本技术实施例中,文件属性可以包括文件名、文件头等属性信息。
113.在本技术实施例中,可以根据匹配参数序列中的首个匹配参数,遍历固件文件列
表中各个固件文件的文件属性,获取文件属性中包含首个匹配参数的固件文件,并将文件属性中包含首个匹配参数的固件文件作为候选固件文件,从而可以将首个候选固件文件的文件名作为目标文件名。
114.作为一种示例,可以从固件文件列表中的首个固件文件开始遍历,确定各固件文件对应的文件属性中是否包括首个匹配参数,并将首个遍历到的包括首个匹配参数的固件文件的文件名作为目标文件名。
115.步骤103,依次根据固件文件列表中的各个非首个候选固件文件的文件属性与匹配参数序列的第一匹配情况,以及目标文件名对应的文件属性与匹配参数序列的第二匹配情况,对目标文件名进行更新,至目标文件名的第二匹配情况满足匹配条件或者更新处理完成。
116.在本技术实施例中,匹配条件可以根据实际应用需求进行设置。
117.在本技术实施例的一种可能的实现方式中,匹配条件可以根据固件文件与匹配参数匹配的苛刻程度设置。
118.作为一种示例,当苛刻程度相对较高时,匹配条件可以为目标文件名对应的文件属性包括匹配参数序列中的所有匹配参数。
119.作为另一种示例,当苛刻程度相对较低时,匹配条件可以为目标文件名对应的文件属性包括匹配参数序列中排序在前的预设数量的匹配参数。
120.其中,预设数量可以根据实际需求进行设置。
121.由此,可以实现根据实际的应用需求设置匹配条件,可以提升该方法的灵活性和适用性。
122.在本技术实施例中,更新处理完成,是指匹配参数序列中的所有匹配参数均与固件文件列表中的候选固件文件的文件属性完成匹配。
123.可以理解的是,步骤102确定的目标文件名仅为固件文件列表中第一个与首个匹配参数匹配的文件名,在匹配参数序列中存在非首个匹配参数时,该目标文件名可能与匹配参数序列中的非首个匹配参数匹配,也可能与非首个匹配参数不匹配,而在目标文件名与非首个参数不匹配的情况下,则为了提升固件文件确定结果的准确性,可以对目标文件名进行更新。
124.在本技术实施例中,在匹配参数序列中存在非首个匹配参数时,针对固件文件列表中的每个非首个候选固件文件,可以根据该非首个候选固件文件的文件属性与匹配参数序列的第一匹配情况,以及根据目标文件名对应的文件属性与匹配参数序列的第二匹配情况,对目标文件名进行更新,直至目标文件名的第二匹配情况满足匹配条件或者更新处理完成。
125.步骤104,在更新后的目标文件名的第二匹配情况满足匹配条件时,确定匹配结果为目标文件名对应的固件文件。
126.在本技术实施例中,在更新后的目标文件名对应的文件属性与匹配参数序列的第二匹配情况满足匹配条件时,可以将目标文件名对应的固件文件,作为指定外设对应的固件文件。
127.在本技术实施例的一种可能的实现方式中,在更新后的目标文件名对应的文件属性与匹配参数序列的第二匹配情况不满足匹配条件时,可以确定固件文件列表中不存在指
定外设对应的固件文件,即匹配结果为固件文件列表中未存在对应的固件文件。
128.本技术实施例的固件文件匹配方法,通过根据匹配参数序列中的首个匹配参数遍历固件文件列表中各个固件文件的文件属性,获取首个候选固件文件的文件名,作为目标文件名;其中,候选固件文件的文件属性中包括首个匹配参数;依次根据固件文件列表中各个非首个候选固件文件的文件属性与匹配参数序列的第一匹配情况,以及目标文件名对应的文件属性与匹配参数序列的第二匹配情况,对目标文件名进行更新,至目标文件名的第二匹配情况满足匹配条件或者更新处理完成,并在更新后的目标文件名的第二匹配情况满足匹配条件时,确定匹配结果为目标文件名对应的固件文件。由此,可以实现不通过排序,直接从固件文件列表中筛选出匹配的固件文件,可以提升固件文件的匹配效率。
129.为了清楚说明上述实施例是如何对目标文件名进行更新的,本技术提供了另一种固件文件匹配方法。
130.图2为本技术实施例二所提供的固件文件匹配方法的流程示意图。
131.如图2所示,该固件文件匹配方法可以包括以下步骤:
132.步骤201,获取匹配参数序列。
133.步骤202,根据匹配参数序列中的首个匹配参数遍历固件文件列表中各个固件文件的文件属性,获取首个候选固件文件的文件名,作为目标文件名;其中,候选固件文件的文件属性中包括首个匹配参数。
134.在本技术实施例中,步骤201至202可以分别采用本技术的各实施例中的任一种方式实现,本技术实施例并不对此作出限定,也不再赘述。
135.步骤203,针对固件文件列表中的每个非首个候选固件文件,根据该非首个候选固件文件的文件属性与匹配参数序列的第一匹配情况,以及目标文件名对应的文件属性与匹配参数序列的第二匹配情况,对目标文件名进行更新。
136.在本技术实施例中,针对固件文件列表中的每个非首个候选固件文件,可以根据该非首个候选固件文件的文件属性与匹配参数序列的第一匹配情况,以及目标文件名对应的文件属性与匹配参数序列的第二匹配情况,确定是否对目标文件名进行更新。
137.举例而言,针对某个非首个候选固件文件,若根据第一匹配情况,确定该首个候选固件文件的文件属性与匹配参数序列中的非首个匹配参数匹配,而根据第二匹配情况,确定目标文件名对应的文件属性与上述非首个匹配参数不匹配,则可以根据该候选固件文件的文件名,对目标文件名进行更新。也就是说,本技术中,可以将非首个候选文件的文件名与目标文件名进行比对,确定两个文件名对应的文件属性中哪个包含的匹配参数多,包含匹配参数多的那个文件名可以作为新的目标文件名。
138.在本技术实施例的一种可能的实现方式中,可以依次针对匹配参数序列中的每个非首个匹配参数,判断目标文件名对应的文件属性和该非首个候选固件文件对应的文件属性是否包括非首个匹配参数,从而可以根据判断结果,确定是否对目标文件名进行更新。由此,可以实现根据匹配参数序列中的每个匹配参数,判断目标文件名对应的文件属性和非首个候选固件文件的文件属性是否包括对应的匹配参数,根据判断结果,确定是否对目标文件名进行更新,可以提升目标文件名更新结果的准确性和可靠性,从而可以提升固件文件匹配结果的准确性和可靠性。
139.作为一种示例,当匹配参数序列包括多个匹配参数时,针对固件文件列表中的每
个非首个候选固件文件,可以依次根据匹配参数序列中的每个非首个匹配参数,判断目标文件名对应的文件属性是否包括该非首个匹配参数,以及判断上述非首个候选固件文件对应的文件属性是否包括该非首个匹配参数。在目标文件名对应的文件属性包括该非首个匹配参数时,无论上述非首个候选固件文件对应的文件属性是否包括该非首个匹配参数,均可以不对该目标文件名进行更新,即可以停止判断动作且停止此次更新动作。
140.而在目标文件名对应的文件属性未包括该非首个匹配参数,且上述非首个候选固件对应的文件属性包括该非首个匹配参数的情况下,可以根据上述非首个候选固件文件的文件名对目标文件名进行更新,并停止判断动作;而在上述非首个候选固件文件的文件属性未包括该非首个匹配参数,且目标文件名对应的文件属性也未包括该非首个匹配参数时,继续判断动作,即可以根据匹配参数序列中该非首个匹配参数的下一个匹配参数执行上述判断过程。
141.由此,可以实现对目标文件名进行动态维护和更新,可以提升匹配结果的准确性和可靠性。
142.步骤204,判断更新后的目标文件名的第二匹配情况是否满足匹配条件,以及判断是否更新处理完成。
143.步骤205,在更新后的目标文件名的第二匹配情况满足匹配条件,或者更新处理完成时,停止对目标文件名的更新处理操作。
144.在本技术实施例中,针对固件文件列表中的每个非首个候选固件文件,若根据其中一个候选固件文件的文件名对目标文件名进行更新后,若更新后的目标文件名的第二匹配情况满足匹配条件,或者更新处理完成,则可以停止对目标文件名的更新处理操作,而无需对固件文件列表中的下一个非首个候选固件文件执行上述步骤,可以提升固件文件的匹配效率。
145.作为一种示例,可以根据匹配参数序列中各匹配参数的排序位置,按序确定目标文件名对应的文件属性是否包括对应的匹配参数,且非首个候选固件文件对应的文件属性是否包括对应的匹配参数,若目标文件名对应的文件属性未包括对应的匹配参数,且非首个候选固件文件对应的文件属性包括对应的匹配参数,则根据上述非首个候选固件文件对目标文件名进行更新,直到目标文件名对应的文件属性中包含匹配参数序列中所有的匹配参数(此时,目标文件名的第二匹配情况满足匹配条件以及更新处理完成)时,或者,直到目标文件名对应的文件属性中包含匹配参数序列中排序在前的预设数量的匹配参数(此时,目标文件名的第二匹配情况满足匹配条件时,停止遍历动作,即无需继续遍历固件文件列表中的后续文件,可以提升匹配效率。
146.举例而言,假设匹配参数序列包括优先级降序排列的第一优先级匹配参数(例如记为param1)、第二优先级匹配参数(例如记为param2)、第三优先级匹配参数(例如记为param3),并且,假设一共存在三个第一文件名,分别为param1_xx_xx_tp、param1_param2_xx_tp、param1_param2_param3_suf,假设遍历到的首个候选固件文件的文件名(即目标文件名)为param1_xx_xx_tp,则在遍历到第二个与param1匹配的文件名(即第二个候选固件文件的文件名)后,比如该第二个候选固件文件的文件名为param1_param2_xx_tp,由于第二个候选固件文件的文件名包含匹配参数序列中的param2,而目标文件名未包含匹配参数序列中的param2,则可以根据第二个候选固件文件的文件名对目标文件名进行更新。此时,
由于目标文件名对应的文件属性未包含匹配参数序列中所有的匹配参数,因此可以继续遍历固件文件列表,确定第三个与param1匹配的文件名(即第三个候选固件文件的文件名),比如该第三个候选固件文件的文件名为param1_param2_param3_suf,由于第三个候选固件文件的文件名包含param2和param3,而目标文件名只包含param2而未包含匹配参数序列中的param3,则可以根据第三个候选固件文件的文件名对目标文件名进行更新。由于更新后的目标文件名对应的文件属性中包含匹配参数序列中所有的匹配参数,因此,可以停止遍历动作,即无需继续遍历固件文件列表中位于第三个候选固件文件之后的固件文件,可以提升匹配效率。
147.步骤206,在更新后的目标文件名的第二匹配情况未满足匹配条件,且更新处理未完成时,对固件文件列表中的下一个非首个候选固件文件执行上述步骤。
148.在本技术实施例中,针对固件文件列表中的每个非首个候选固件文件,若根据其中一个候选固件文件的文件名对目标文件名进行更新后,若更新后的目标文件名的第二匹配情况未满足匹配条件,则可以判断是否更新处理完成,在更新处理未完成的情况下,可以对固件文件列表中的下一个非首个候选固件文件执行上述步骤;而在更新处理完成的情况下,则可以确定固件文件列表中不存在指定外设对应的固件文件,即匹配结果为固件文件列表中未存在对应的固件文件。
149.步骤207,在更新后的目标文件名的第二匹配情况满足匹配条件时,确定匹配结果为目标文件名对应的固件文件。
150.在本技术实施例中,步骤207可以采用本技术的各实施例中的任一种方式实现,本技术实施例并不对此作出限定,也不再赘述。
151.本技术实施例的固件文件匹配方法,通过针对固件文件列表中的每个非首个候选固件文件,根据非首个候选固件文件的文件属性与匹配参数序列的第一匹配情况,以及目标文件名对应的文件属性与匹配参数序列的第二匹配情况,对目标文件名进行更新;判断更新后的目标文件名的第二匹配情况是否满足匹配条件,以及判断是否更新处理完成;在更新后的目标文件名的第二匹配情况满足匹配条件,或者更新处理完成时,停止对目标文件名的更新处理操作,而无需对固件文件列表中的下一个非首个候选固件文件执行上述步骤,即无需将固件文件列表中的后续候选固件文件与匹配参数序列进行匹配,可以提升固件文件的匹配效率。
152.通过在更新后的目标文件名的第二匹配情况未满足匹配条件,且更新处理未完成时,对固件文件列表中的下一个非首个候选固件文件执行上述步骤,可以提升目标文件名更新结果的准确性和可靠性,从而可以提升固件文件匹配结果的准确性和可靠性。
153.为了清楚说明上述任一实施例,下面结合实施例三,对固件文件的匹配过程进行详细说明。
154.图3为本技术实施例三所提供的固件文件匹配方法的流程示意图。
155.如图3所示,该固件文件匹配方法可以包括以下步骤:
156.步骤301,获取匹配参数序列。
157.在本技术实施例中,步骤301可以采用本技术的各实施例中的任一种方式实现,本技术实施例并不对此作出限定,也不再赘述。
158.在本技术实施例的一种可能的实现方式中,匹配参数序列中的每个匹配参数可以
为预设的文件属性参数。其中,文件属性参数例如可以为文件名、文件头等属性参数。
159.可以理解的是,文件的摘要数值,比如md5(message digest algorithm 5,消息摘要算法第五版)值可以唯一标识对应的文件,因此,在本技术实施例的另一种可能的实现方式中,匹配参数序列中的每个匹配参数还可以为根据预设的文件属性参数计算得到的摘要数值。
160.举例而言,预设的文件属性参数分别为param1、param2、param3,则匹配参数序列包含的各匹配参数可以为param1、param2、param3分别对应的摘要数值,比如md5值。
161.由此,可以实现根据不同方式,生成匹配参数序列中的各匹配参数,可以提升该方法的灵活性和适用性。
162.步骤302,根据匹配参数序列中的首个匹配参数遍历固件文件列表中各个固件文件的文件属性,获取首个候选固件文件的文件名,作为目标文件名。
163.其中,候选固件文件的文件属性中包括首个匹配参数。
164.步骤303,判断匹配参数序列中是否存在非首个匹配参数,若是,执行步骤306,若否,执行步骤304。
165.步骤304,确定目标文件名对应的文件属性与匹配参数序列的匹配情况满足第二匹配条件。
166.需要说明的是,前述实施例中对匹配条件的解释说明也适用于该实施例,在此不做赘述。
167.在本技术实施例中,在匹配参数序列中仅包括一个匹配参数时,可以确定目标文件名对应的文件属性与匹配参数序列的第二匹配情况满足匹配条件。
168.也就是说,在匹配参数序列中仅包括一个匹配参数时,首个候选固件文件的文件名(即目标文件名)对应的文件属性包含匹配参数序列中的所有的匹配参数,在从固件文件列表中遍历到首个候选固件文件后,即可停止判断动作或遍历动作,而无需继续遍历固件文件列表中的后续文件,可以提升匹配效率。
169.步骤305,确定匹配结果为目标文件名对应的固件文件。
170.在本技术实施例中,在目标文件名对应的文件属性与匹配参数序列的第二匹配情况满足匹配条件时,可以将目标文件名对应的固件文件,作为指定外设对应的固件文件。
171.步骤306,依次根据固件文件列表中各个非首个候选固件文件的文件属性与匹配参数序列的第一匹配情况,以及目标文件名对应的文件属性与匹配参数序列的第二匹配情况,对目标文件名进行更新,至目标文件名的第二匹配情况满足匹配条件或者更新处理完成。
172.步骤307,在更新后的目标文件名的第二匹配情况满足匹配条件时,确定匹配结果为目标文件名对应的固件文件。
173.在本技术实施例中,步骤306至307可以分别采用本技术的各实施例中的任一种方式实现,本技术实施例并不对此作出限定,也不再赘述。
174.可选地,在本技术的任意一个实施例之中,在确定匹配结果为目标文件名对应的固件文件之后,还可以将目标文件名对应的固件文件的路径以及目标文件名,存储到目标位置,从而可以从目标位置,获取目标文件名对应的固件文件的路径以及目标文件名,基于目标文件名对应的固件文件的路径以及目标文件名,可以获取到对应的固件文件。例如,目
标位置可以为path_buf,其中,path_buf为path buffer(路径缓存),用于存放文件名称、文件路径在内的字符串。
175.本技术实施例的固件文件匹配方法,通过在匹配参数序列中未存在非首个匹配参数时,确定目标文件名对应的文件属性与匹配参数序列的匹配情况满足匹配条件,由此,可以无需继续遍历固件文件列表中处于首个候选固件文件之后的固件文件,可以提升匹配效率。
176.作为一种示例,以匹配参数序列包括优先级降序排列的第一优先级匹配参数(例如记为param1)、第二优先级匹配参数(例如记为param2)、第三优先级匹配参数(例如记为param3)进行示例,如图4所示,可以对给定目录或文件目录下的固件文件列表进行遍历(应当理解的是,并不需要遍历给定目录下的所有文件,只需找到对应的固件文件即可停止遍历动作),通过解析文件名或者文件头内容,对匹配参数进行匹配后通过二选一筛选的方法,进行文件筛选,最终过滤输出满足匹配条件的唯一的固件文件(根据同一路径下固件文件不重名的原则,确定了固件文件的唯一性),作为指定外设对应的固件文件。
177.具体地,主要思路为:首先对匹配参数序列中的匹配参数进行优先级划分,在给定目录下,从首个固件文件开始遍历,将文件名对应的文件属性与匹配参数序列中不同优先级的匹配参数进行匹配,图4以三个优先级为例,按照以下步骤执行匹配过程:
178.第一步:当匹配到与第一优先级匹配参数(param1)匹配的文件名(本技术中记为首个候选固件文件的文件名)时,存储该文件名到path_buf,进行查找下一个与第一优先级匹配参数(param1)匹配的文件名(本技术中记为非首个候选固件文件的文件名)。
179.第二步:当找到下一个与第一优先级匹配参数(param1)匹配的文件名(本技术中记为第二个候选固件文件的文件名)时,进行第二优先级匹配参数(param2)的匹配,即将第二个候选固件文件的文件名与第二优先级匹配参数(param2)进行匹配,以及将首个候选固件文件的文件名与第二优先级匹配参数(param2)进行匹配,根据匹配情况进行文件名淘汰,淘汰原则是——淘汰与第二优先级匹配参数(param2)未匹配的文件名,若两个文件名(即首个候选固件文件的文件名和第二个候选固件文件的文件名)均未与第二优先级匹配参数(param2)匹配,则淘汰第二个候选固件文件的文件名;若两个文件名均与第二优先级匹配参数(param2)匹配,则进行第三优先级匹配参数(param3)的匹配,淘汰与第三优先级匹配参数(param3)未匹配的文件名,将未淘汰的文件名更新到缓存path_buf中。
180.第三步:依此类推,在两个文件名中找到匹配度较高的文件名,并将文件名更新到缓存path_buf。匹配度将根据设置的匹配级别进行定义,例如设置三级匹配,则确定与第三优先级匹配参数匹配成功的文件名的匹配度最高,依次递推。
181.第四步:继续查找给定目录中下一个文件名,将与第一优先级匹配参数匹配的文件名,与上一步保存的文件名进行优先级匹配参数的匹配,以进行筛选淘汰,淘汰规则与第二步到第三步流程完全相同,最终更新缓存path_buf。
182.第五步:当找到与设置匹配优先级别匹配的文件名后,即刻退出匹配逻辑,例如,当确定某一个候选固件文件的文件名对应的文件属性同时包含param1、param2和param3时,退出匹配逻辑,并输出匹配的文件名对应的文件路径,更新到path_buf以备后用。
183.图4中,

表示第一次找到的首个与第一优先级匹配参数匹配的文件名,将文件名存入path_buf中;

表示第二次(需要说明的是,上述第二次不一定是扫描的给定目录下的
第二个固件文件)找到的与第一优先级匹配参数匹配的文件名,并将上述找到的文件名与第二优先级匹配参数进行匹配;

表示对当前两个文件名完成了第三优先级匹配参数的匹配,并将与第三优先级匹配参数匹配的文件名保存至path_buf。
184.通过扩展,

可以是扫描给定目录下的第n个与第一优先级匹配参数匹配的文件名,

可以是扫描给定目录下当前找到的两个文件名中与第n优先级匹配参数的匹配结果。
185.也就是说,本技术中,可以根据二选一筛选方法,即匹配流程上通过两个文件名交替进行不同优先级匹配参数的匹配,得到匹配结果,并更新到缓存path_buf中。
186.极端情况下,如果扫描给定目录,确定只有一个文件名与第一优先级匹配参数匹配,则最终输出该文件名,并确定该文件名是否满足匹配条件,若满足匹配条件,则确定该文件名有效,若不满足匹配条件,则确定该文件名无效。通过扩展,如果只有小于n的优先级匹配参数被匹配,那么可以根据匹配条件确定是否使用本次匹配到的文件名,其中,n为设定的匹配参数的优先级个数,n的取值可以是根据需求设置为任意大于0的整数,即匹配参数的个数和优先级可以根据实际应用需要进行设置和调整。需要说明的是,优先级个数的设定,可以是基于n个匹配参数进行设定的。
187.由此,能够快速筛选出满足匹配条件的固件文件,即在给定匹配参数和优先级的情况下,设计代码逻辑,能够完成快速匹配。
188.综上,本技术中,无需获取文件的特性参数,无需对文件进行排序,可以减小系统运行的消耗,减少cpu(central processing unit,中央处理器)的负荷。直接使用文件名称、文件头内容的对应信息或文件的md5值与匹配参数进行匹配,并且根据匹配参数的优先级的顺序进行依次匹配,无需对固件文件的所有特性参数进行匹配后再过滤固件文件,可以减少无效参数的匹配,提高过滤的速度,特别适合于单片机等处理器运算能力较弱的系统平台,比如可以应用于嵌入式文件系统,满足对外设对应的固件文件的查询和匹配的需求。
189.其中,md5值可以提前传入系统,在匹配逻辑运行后可直接使用,需要说明的是,系统需要支持md5的计算功能。
190.应当理解的是,当匹配参数序列包括优先级降序排列的各匹配参数时,由于排列在首个的匹配参数的优先级的等级最高,如果固件文件列表中未存在与首个匹配参数匹配的文件名,则确定固件文件列表中不存在指定外设对应的固件文件。即优先级较高的匹配参数未匹配成功,则不考虑优先级较低的匹配参数是否与固件文件列表中的文件名匹配。
191.与上述图1至图4实施例提供的固件文件匹配方法相对应,本技术还提供一种固件文件匹配装置,由于本技术实施例提供的固件文件匹配装置与上述图1至图4实施例提供的固件文件匹配方法相对应,因此在固件文件匹配方法的实施方式也适用于本技术实施例提供的固件文件匹配装置,在本技术实施例中不再详细描述。
192.图5为本技术实施例五所提供的固件文件匹配装置的结构示意图。
193.如图5所示,该固件文件匹配装置500可以包括:获取模块510、处理模块520、更新模块530以及确定模块540。
194.其中,获取模块510,用于获取匹配参数序列。
195.处理模块520,用于根据匹配参数序列中的首个匹配参数遍历固件文件列表中各个固件文件的文件属性,获取首个候选固件文件的文件名,作为目标文件名;其中,候选固
件文件的文件属性中包括首个匹配参数。
196.更新模块530,用于依次根据固件文件列表中各个非首个候选固件文件的文件属性与匹配参数序列的第一匹配情况,以及目标文件名对应的文件属性与匹配参数序列的第二匹配情况,对目标文件名进行更新,至目标文件名的第二匹配情况满足匹配条件或者更新处理完成。
197.确定模块540,用于在更新后的目标文件名的第二匹配情况满足匹配条件时,确定匹配结果为目标文件名对应的固件文件。
198.进一步地,在本技术实施例的一种可能的实现方式中,更新模块530,可以包括:
199.更新单元,用于针对固件文件列表中的每个非首个候选固件文件,根据非首个候选固件文件的文件属性与匹配参数序列的第一匹配情况,以及目标文件名对应的文件属性与匹配参数序列的第二匹配情况,对目标文件名进行更新。
200.判断单元,用于判断更新后的目标文件名的第二匹配情况是否满足匹配条件,以及判断是否更新处理完成。
201.停止单元,用于在更新后的目标文件名的第二匹配情况满足匹配条件,或者更新处理完成时,停止对目标文件名的更新处理操作。
202.执行单元,用于在更新后的目标文件名的第二匹配情况未满足匹配条件,且更新处理未完成时,对固件文件列表中的下一个非首个候选固件文件执行上述步骤。
203.进一步地,在本技术实施例的一种可能的实现方式中,更新单元,具体用于:依次针对匹配参数序列中的每个非首个匹配参数,判断目标文件名对应的文件属性和非首个候选固件文件的文件属性是否包括非首个匹配参数;根据判断结果,对目标文件名进行更新。
204.进一步地,在本技术实施例的一种可能的实现方式中,更新单元,具体用于:在非首个候选固件文件的文件属性未包括非首个匹配参数且目标文件名对应的文件属性未包括非首个匹配参数时,继续判断动作;或者,在非首个候选固件文件的文件属性未包括非首个匹配参数且目标文件名对应的文件属性包括非首个匹配参数时,停止判断动作且停止此次更新动作;或者,在非首个候选固件文件的文件属性包括非首个匹配参数,且目标文件名对应的文件属性未包括非首个匹配参数时,根据非首个候选固件文件的文件名对目标文件名进行更新,并停止判断动作。
205.进一步地,在本技术实施例的一种可能的实现方式中,匹配参数序列中的匹配参数按照优先级降序排序;或者,匹配参数序列中的匹配参数按照优先级升序排序。
206.进一步地,在本技术实施例的一种可能的实现方式中,匹配参数序列中的匹配参数为,预设的文件属性参数或者预设的文件属性参数计算得到的摘要数值。
207.进一步地,在本技术实施例的一种可能的实现方式中,在图5所示实施例的基础上,该固件文件匹配装置500,还可以包括:
208.存储模块,用于将目标文件名对应的固件文件的路径以及目标文件名,存储到目标位置。
209.进一步地,在本技术实施例的一种可能的实现方式中,匹配条件为,目标文件名对应的文件属性包括匹配参数序列中的所有匹配参数或者匹配参数序列中排序在前的预设数量的匹配参数。
210.本技术实施例的固件文件匹配装置,通过根据匹配参数序列中的首个匹配参数遍
历固件文件列表中各个固件文件的文件属性,获取首个候选固件文件的文件名,作为目标文件名;其中,候选固件文件的文件属性中包括首个匹配参数;依次根据固件文件列表中各个非首个候选固件文件的文件属性与匹配参数序列的第一匹配情况,以及目标文件名对应的文件属性与匹配参数序列的第二匹配情况,对目标文件名进行更新,至目标文件名的第二匹配情况满足匹配条件或者更新处理完成,并在更新后的目标文件名的第二匹配情况满足匹配条件时,确定匹配结果为目标文件名对应的固件文件。由此,可以实现不通过排序,直接从固件文件列表中筛选出匹配的固件文件,可以提升固件文件的匹配效率。
211.为了实现上述实施例,本技术还提出一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时,实现如本技术上述任一实施例提出的固件文件匹配方法。
212.为了实现上述实施例,本技术还提出一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本技术上述任一实施例提出的固件文件匹配方法。
213.为了实现上述实施例,本技术还提出一种计算机程序产品,当计算机程序产品中的指令处理器执行时,执行如本技术上述任一实施例提出的固件文件匹配方法。
214.图6示出了适于用来实现本技术实施方式的示例性电子设备的框图。图6显示的电子设备12仅仅是一个示例,不应对本技术实施例的功能和使用范围带来任何限制。
215.如图6所示,电子设备12以通用计算设备的形式表现。电子设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
216.总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(industry standard architecture;以下简称:isa)总线,微通道体系结构(micro channel architecture;以下简称:mac)总线,增强型isa总线、视频电子标准协会(video electronics standards association;以下简称:vesa)局域总线以及外围组件互连(peripheral component interconnection;以下简称:pci)总线。
217.电子设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被电子设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
218.存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(random access memory;以下简称:ram)30和/或高速缓存存储器32。电子设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图6未显示,通常称为“硬盘驱动器”)。尽管图6中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如:光盘只读存储器(compact disc read only memory;以下简称:cd

rom)、数字多功能只读光盘(digital video disc read only memory;以下简称:dvd

rom)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本技术各
实施例的功能。
219.具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本技术所描述的实施例中的功能和/或方法。
220.电子设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户对象能与该电子设备12交互的设备通信,和/或与使得该电子设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口22进行。并且,电子设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(local area network;以下简称:lan),广域网(wide area network;以下简称:wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与电子设备12的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。
221.处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现前述任一实施例中提及的方法。
222.在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本技术的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
223.此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本技术的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
224.流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本技术的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本技术的实施例所属技术领域的技术人员所理解。
225.在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电
连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
226.应当理解,本技术的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
227.本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
228.此外,在本技术各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
229.上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本技术的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本技术的限制,本领域的普通技术人员在本技术的范围内可以对上述实施例进行变化、修改、替换和变型。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1