发明内容
本申请提供一种车载终端配置参数的设置方法、装置及电子设备。用以解决现有车载终端配置参数方法导致车载终端的生产过程复杂,并且后续对车载终端进行维护时存在安全性和可靠性低的问题。
第一方面,本申请实施例提供一种车载终端配置参数的设置方法,包括:在检测到车载终端上电时,从备份区获取第一配置参数,第一配置参数为更新后的配置参数;确定第一配置参数是否完整;若第一配置参数完整,则将第一配置参数写入启动区;在启动区读取第一配置参数,根据第一配置参数启动车载终端对应的操作系统,其中,备份区和启动区为操作系统中非易失存储器的不同分区。
在本申请的一个实施例中,确定第一配置参数是否完整,包括:确定第一配置参数的当前校验值;若当前校验值与备份区中存储的原始校验值相同,则确定第一配置参数完整;若当前校验值与原始校验值不同,则确定第一配置参数不完整。
在本申请的一个实施例中,在备份区获取第一配置参数之前,还包括:读取备份区的数据标记;确定数据标记是第一标记,第一标记用于表示备份区中的第一配置参数已更新。
在本申请的一个实施例中,在备份区获取第一配置参数之前,还包括:接收来自目标设备的第一配置参数,目标设备包括云端设备、服务器或者参数配置设备中的任一种;将第一配置参数写入备份区;确定第一配置参数对应的原始校验值,并在备份区中保存原始校验值。
在本申请的一个实施例中,在将第一配置参数写入备份区之后,还包括:设置第一配置参数的数据标记为第一标记,第一标记用于表示备份区中的第一配置参数已更新。
在本申请的一个实施例中,将第一配置参数写入启动区之前,还包括:清除启动区的第二配置参数,第二配置参数为更新前的配置参数。
在本申请的一个实施例中,将第一配置参数写入启动区之后,还包括:设置第一配置参数的数据标记为第二标记,第二标记用于表示备份区中的第一配置参数未更新。
第二方面,本申请实施例提供一种车载终端配置参数的设置装置,包括:
获取模块,用于在检测到车载终端上电时,从备份区获取第一配置参数,第一配置参数为更新后的配置参数;
确定模块,用于确定第一配置参数是否完整;
写入模块,用于若第一配置参数完整,则将第一配置参数写入启动区;
启动模块,用于在启动区读取第一配置参数,根据第一配置参数启动车载终端对应的操作系统,其中,备份区和启动区为操作系统中非易失存储器的不同分区。
在本申请的一个实施例中,确定模块具体用于:确定第一配置参数的当前校验值;若当前校验值与备份区中存储的原始校验值相同,则确定第一配置参数完整;若当前校验值与原始校验值不同,则确定第一配置参数不完整。
在本申请的一个实施例中,车载终端配置参数的设置装置还包括:
读取模块,用于读取备份区的数据标记;
第一标记确定模块,用于确定数据标记是第一标记,第一标记用于表示备份区中的第一配置参数已更新。
在本申请的一个实施例中,车载终端配置参数的设置装置还包括:
接收模块,用于接收来自目标设备的第一配置参数,目标设备包括云端设备、服务器或者参数配置设备中的任一种;
参数写入模块,用于将第一配置参数写入备份区;
原始校验值确定模块,用于确定第一配置参数对应的原始校验值,并在备份区中保存原始校验值。
在本申请的一个实施例中,车载终端配置参数的设置装置还包括:
设置模块,用于设置第一配置参数的数据标记为第一标记,第一标记用于表示备份区中的第一配置参数已更新。
在本申请的一个实施例中,车载终端配置参数的设置装置还包括:
清除模块,用于清除启动区的第二配置参数,第二配置参数为更新前的配置参数。
在本申请的一个实施例中,车载终端配置参数的设置装置还包括:
第二标记设置模块,用于设置第一配置参数的数据标记为第二标记,第二标记用于表示备份区中的第一配置参数未更新。
第三方面,本申请实施例提供一种电子设备,包括:
至少一个处理器;以及
与至少一个处理器通信连接的存储器;其中,
存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使电子设备能够执行本申请第一方面中任一项的车载终端配置参数的设置方法。
第四方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,当处理器执行计算机执行指令时,实现第方面中任一项所述的车载终端配置参数的设置方法。
第五方面,本申请实施例提供一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时实现本申请第一方面中任一项的车载终端配置参数的设置方法。
本申请实施例提供一种车载终端配置参数的设置方法、装置和电子设备,该车载终端配置参数的设置方法包括:在检测到车载终端上电时,从备份区获取第一配置参数,第一配置参数为更新后的配置参数;确定第一配置参数是否完整;若第一配置参数完整,则将第一配置参数写入启动区;在启动区读取第一配置参数,根据第一配置参数启动车载终端对应的操作系统,其中,备份区和启动区为操作系统中非易失存储器的不同分区。本申请实施例设置一备份区,用于配置参数的升级,则在车载终端的生产过程中可以统一生产,在后续需要适配各种车型时,在进行对应配置参数的写入,进而能够提高车载终端的生产效率。再者,设置备份区备份配置参数,能够提高后续车载终端在维护时的安全性和可靠性。最后,在启动车载终端的操作系统时,只需要在启动区一个区读取配置参数启动即可,启动逻辑简单。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。
此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
示例性的,图1为本申请一实施例提供的车载终端配置参数的设置方法的场景示意图,如图1中包括:生产线11,多个车载终端12(如12(a)、12(b)和12(c)),多个同款不同车型的车辆13(如13(a)、13(b)和13(c))。其中,生产线生产出具有统一软硬件系统的多个车载终端12,车载终端12具有相同的初始配置参数。在车载终端12要适配不同车型的车辆13时,需要对车载终端12的初始配置参数进行更新。例如,将车载终端12(a)初始配置参数更新为适配车辆13(a)的配置参数。将车载终端12(b)初始配置参数更新为适配车辆13(b)的配置参数。将车载终端12(c)初始配置参数更新为适配车辆13(c)的配置参数。
此外,本申请实施例还可以应用在对配置参数的升级过程中,例如,车载终端12(a)的初始配置参数在更新为适配车辆13(a)的配置参数后,后续需要对该更新后的配置参数进行升级,本申请实施例同样可以实现。
在上述应用场景中,为适配各种车型的车辆,一种方式是车载终端在生产线的过程中即直接写入对应车型的配置参数,这样需要多个生产线支撑车载终端的生产,影响车载终端的生产效率。并且由于配置参数没有备份,因此造成了后续需要对配置参数升级或者维护过程中安全性和可靠性低的问题。
另一种方式是,将存储器分为两个分区,如A分区和B分区。若启动车载终端的操作系统时,使用的是A分区的配置参数,则B分区作为A分区的备份区,若使用的是B分区的配置参数,则A分区作为B分区的备份区。则后续在写入更新的配置参数时,当前使用的是A分区的配置参数,则将更新的配置参数写入B分区,然后使用B分区的更新的配置参数重新启动操作系统,下次启动时,使用B分区的更新的配置参数。若需要再次更新时,则将再次更新的配置参数写入A分区,然后使用A分区的再次更新的配置参数重新启动操作。可见,这种方式需要用户读取配置参数时,需要判断哪个分区是正在使用的分区,然后才去对应的分区读取配置参数,并且每次启动时,可能读取配置参数的分区均不同,因此导致操作系统的启动效率低。
基于上述方案存在的问题,本申请提供一种车载终端配置参数的设置方法,能够设置一备份区,用于配置参数的升级,则在车载终端的生产过程中可以统一生产,在后续需要适配各种车型时,在进行对应配置参数的写入,进而能够提高车载终端的生产效率。再者,设置备份区备份配置参数,能够提高后续车载终端在维护时的安全性和可靠性。最后,在启动车载终端的操作系统时,只需要在启动区一个区读取配置参数启动即可,启动逻辑简单、效率高。
下面,通过具体实施例对本申请的技术方案进行详细说明。需要说明的是,下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。
图2为本申请一实施例提供的车载终端配置参数的设置方法的流程图。本申请实施例提供一种车载终端配置参数的设置方法,应用于电子设备,该电子设备包括车载终端,车载终端配置参数的设置方法具体包括以下步骤:
S201,在检测到车载终端上电时,从备份区获取第一配置参数。
其中,第一配置参数为更新后的配置参数。具体为备份区新写入的配置参数,但是未在启动区写入。
具体的,车载终端包括:非易失存储器。其中,非易失存储器包括:可编程只读内存(PROM)、电可改写只读内存(EAROM)、可擦可编程只读内存(EPROM)或电可擦可编程只读内存(EEPROM)中的一种。
进一步的,备份区和启动区是非易失存储器中的两个不同分区。启动区的作用是启动车载终端的操作系统时,从启动区读取对应的配置参数来启动操作系统。备份区的作用是对启动区的配置参数进行备份。
此外,车载终端是指配置车辆中,可以对汽车中配置的各种功能进行控制。如车辆中的空调、音响、立体声、导航以及接打电话等功能。则配置参数包括:操作系统默认启动的应用程序以及各应用程序对应的默认参数等。而当需要针对不同车型针对性的配置对应的配置参数,或者需要对这些应用程序进行升级时,可以在备份区写入新的第一配置参数,则在车载终端下次上电时,从该备份区读取该第一配置参数。
S202,确定第一配置参数是否完整。
其中,确定第一配置参数是否完整,是指确定第一配置参数是否是原始写入备份区的第一配置参数,即第一配置参数是否是完整的。如果第一配置参数是完整的,可以使用。如果不是完整的,可以提醒用户在备份区重新写入第一配置参数。
S203,若第一配置参数完整,则将第一配置参数写入启动区。
其中,将备份区的第一配置参数写入启动区,此时备份区和启动区均具有第一配置参数。实现启动区的第一配置参数用于启动操作系统,备份区的第一配置参数用于备份的作用。
S204,在启动区读取第一配置参数,根据第一配置参数启动车载终端对应的操作系统。
其中,车载终端在启动区读取第一配置参数,启动对应的操作系统。完成了配置参数的更新或升级。
具体的,在配置参数更新或者升级过程中,或者其他任何时候,操作系统启动时,车载终端始终是读取启动区的配置参数。车载终端并不需要判断从备份区读取用于操作系统启动的配置参数,还是从启动区读取操作系统启动的配置参数,提高了操作系统启动的效率。
本申请实施例提供一种车载终端配置参数的设置方法、装置和电子设备,该车载终端配置参数的设置方法包括:在检测到车载终端上电时,从备份区获取第一配置参数,第一配置参数为更新后的配置参数;确定第一配置参数是否完整;若第一配置参数完整,则将第一配置参数写入启动区;在启动区读取第一配置参数,根据第一配置参数启动车载终端对应的操作系统,其中,备份区和启动区为操作系统中非易失存储器的不同分区。
本申请实施例设置一备份区,用于配置参数的升级,则在车载终端的生产过程中可以统一生产,在后续需要适配各种车型时,在进行对应配置参数的写入,进而能够提高车载终端的生产效率。再者,设置备份区备份配置参数,能够提高后续车载终端在维护时的安全性和可靠性。最后,在启动车载终端的操作系统时,只需要在启动区一个区读取配置参数启动即可,启动逻辑简单。
参照图3,为本申请另一实施例提供的车载终端配置参数的设置方法的步骤流程图,具体包括如下步骤:
S301,接收来自目标设备的第一配置参数。
其中,目标设备包括云端设备、服务器或者参数配置设备中的任一种。
具体的,第一配置参数可以是云端或者服务器下发给车载终端的。也可以是车载终端的生产者通过特定的参数配置设备发送给车载终端的。
S302,将第一配置参数写入备份区。
S303,确定第一配置参数对应的原始校验值,并在备份区中保存原始校验值。
其中,可以采用CRC32计算写入备份区的第一配置参数,得到对应的原始校验值,并保存该原始校验值。该原始校验值可以保存在备份区的固定位置,例如,备份区的开头或者末尾位置。
S304,设置第一配置参数的数据标记为第一标记。
其中,第一标记用于表示备份区中的第一配置参数已更新。其中,第一标记可以是0或者其他。第一标记的作用是表示备份区写入了新的第一配置参数,该第一配置参数还未写入到启动区。
具体的,第一配置参数的数据标记是设置在BootLoader中的。其中,BootLoader是嵌入式系统在加电后执行的第一段代码,在BootLoader完成处理器和相关硬件的初始化后,再将操作系统映像或固化的嵌入式应用程序装载到内存中然后跳转到操作系统所在的空间,启动操作系统运行。
本申请实施例提供的S301至S304,完成了第一配置参数在备份区的备份过程。
S305,在检测到车载终端上电时,读取备份区对应的数据标记。
在本申请实施例中S301至S304,是对第一配置参数在备份区的写入过程,S305至S313是对配置参数在启动区的更新过程。
其中,在备份区的写入过程结束后,在预设时间内,对车载终端再次上电后,从BootLoader中先读取数据标记。
S306,确定数据标记是否为第一标记。
若确定数据标记是第一标记,则执行S307,若不是第一标记,则为第二标记,则直接读取启动区的配置参数,启动车载终端对应的操作系统或者结束流程。其中,第一标记用于表示备份区中的第一配置参数已更新,第二标记用于表示备份区的第一配置参数未更新。
示例性的,若数据标记为第一标记(如0),则说明备份区写入了新的第一配置参数,并且该第一配置参数并未写入启动区,则执行后续写入启动区的步骤。若数据标记为第二标记(如1)则说明备份区没有写入了新的第一配置参数,因此不需要将备份区的配置参数写入启动区,则执行可以直接读取启动区的配置参数启动操作系统或者结束流程。
S307,从备份区获取第一配置参数。
该步骤的具体实现过程参照S201,在此不再赘述。
S308,确定第一配置参数的当前校验值。
其中,是将当前备份区的第一配置参数通过CRC32计算,得到当前校验值。
S309,判断视频当前校验值与备份区中存储的原始校验值是否相同
其中,若当前校验值与备份区中存储的原始校验值相同,则确定第一配置参数完整,执行S310,若当前校验值与原始校验值不同,则确定第一配置参数不完整,则将数据标记从第一标记(0)设置为第二标记(1)或清除第一标记(0)已表示备份区没有写入了新的第一配置参数,然后直接读取启动区的配置参数,启动车载终端对应的操作系统或结束流程。
具体的,将当前校验值与备份区中存储的原始校验值进行比对,若比对一致,则确定当前校验值与原始校验值相同,且当前备份区的第一配置参数是完整可靠的,可以正常使用。若当前校验值与原始校验值不相同,则确定当前备份区的第一配置参数被已被篡改,无法使用。
S310,清除启动区的第二配置参数。
其中,第二配置参数为更新前的配置参数,即启动区原有的配置参数。
在本申请实施例中,在对启动区的配置参数进行更新或者升级时,需要将启动区中原有的配置参数删除。
S311,将第一配置参数写入启动区。
该步骤的具体实现方式参照S203,在此不再赘述。
S312,设置第一配置参数的数据标记为第二标记。
其中,第二标记用于表示备份区中的第一配置参数未更新。
具体的,在启动区的配置参数更新或升级结束,则将数据标记修改为第二标记(如1),则在下次启动操作系统时,便可以直接读取启动区的配置参数,不需要执行将备份区的配置参数写入启动区的步骤。
S313,在启动区读取第一配置参数,根据第一配置参数启动车载终端对应的操作系统。
该步骤的具体实现方式参照S204,在此不再赘述。
在本申请实施例中,可以通过在备份区写入第一配置参数,并且写入第一配置参数对应的原始校验值以及数据标记,后续在将第一配置参数写入启动区的步骤,能够通过数据标记确定第一配置参数是否需要写入启动区,通过原始校验值确定第一配置参数是否被篡改,进而使得车载终端的配置参数的更新过程稳定、安全、可靠,且实现过程简单。可以在车辆生产过程以及后续维护过程中安全使用,此外,还能够有力保证车载终端实现采用一套软硬件系统,对应不同的配置参数以适配多种车型的车辆。进一步的降低车载终端生产过程中的风险和成本。
图4为本申请一实施例提供的车载终端配置参数的设置装置40的结构框图。该车载终端配置参数的设置装置,应用于电子设备,电子设备包括车载终端,如图4所示,本申请实施例提供的车载终端配置参数的设置装置40包括:
获取模块41,用于在检测到车载终端上电时,从备份区获取第一配置参数,第一配置参数为更新后的配置参数;
确定模块42,用于确定第一配置参数是否完整;
写入模块43,用于若第一配置参数完整,则将第一配置参数写入启动区;
启动模块44,用于在启动区读取第一配置参数,根据第一配置参数启动车载终端对应的操作系统,其中,备份区和启动区为操作系统中非易失存储器的不同分区。
在本申请的一个实施例中,确定模块42具体用于:确定第一配置参数的当前校验值;若当前校验值与备份区中存储的原始校验值相同,则确定第一配置参数完整;若当前校验值与原始校验值不同,则确定第一配置参数不完整。
在本申请的一个实施例中,车载终端配置参数的设置装置还包括:
读取模块(未示出),用于读取备份区的数据标记;
第一标记确定模块(未示出),用于确定数据标记是第一标记,第一标记用于表示备份区中的第一配置参数已更新。
在本申请的一个实施例中,车载终端配置参数的设置装置还包括:
接收模块(未示出),用于接收来自目标设备的第一配置参数,目标设备包括云端设备、服务器或者参数配置设备中的任一种;
参数写入模块(未示出),用于将第一配置参数写入备份区;
原始校验值确定模块(未示出),用于确定第一配置参数对应的原始校验值,并在备份区中保存原始校验值。
在本申请的一个实施例中,车载终端配置参数的设置装置还包括:
设置模块(未示出),用于设置第一配置参数的数据标记为第一标记,第一标记用于表示备份区中的第一配置参数已更新。
在本申请的一个实施例中,车载终端配置参数的设置装置还包括:
清除模块(未示出),用于清除启动区的第二配置参数,第二配置参数为更新前的配置参数。
在本申请的一个实施例中,车载终端配置参数的设置装置还包括:
第二标记设置模块(未示出),用于设置第一配置参数的数据标记为第二标记,第二标记用于表示备份区中的第一配置参数未更新。
本申请实施例提供的车载终端配置参数的设置装置,用于执行图2或图3对应的方法实施例中的技术方案,其实现原理和技术效果类似,在此不再赘述。
图5为本申请实施例提供的电子设备的硬件结构示意图。如图5所示,本申请实施例的电子设备50可以包括:至少一个处理器51(图5中仅示出了一个处理器);以及,与至少一个处理器通信连接的存储器52。其中,存储器52存储有可被至少一个处理器51执行的指令,指令被至少一个处理器51执行,以使电子设备50能够执行前述任一方法实施例中的技术方案。
可选的,存储器52既可以是独立的,也可以跟处理器51集成在一起。
当存储器52是独立于处理器51之外的器件时,电子设备50还包括:总线53,用于连接存储器52和处理器51。
本申请实施例提供的电子设备可以执行前述任一方法实施例的技术方案,其实现原理和技术效果类似,在此不再赘述。
本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,当处理器执行计算机执行指令时实现前述任一方法实施例中的技术方案。
本申请实施例提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现前述任一方法实施例中的技术方案。
本申请实施例还提供了一种芯片,包括:处理模块与通信接口,该处理模块能执行前述方法实施例中的技术方案。
进一步地,该芯片还包括存储模块(如,存储器),存储模块用于存储指令,处理模块用于执行存储模块存储的指令,并且对存储模块中存储的指令的执行使得处理模块执行前述方法实施例中的技术方案。
应理解,上述处理器可以是中央处理单元(英文:Central Processing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:Digital Signal Processor,简称:DSP)、专用集成电路(英文:Application Specific Integrated Circuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器,还可以为U盘、移动硬盘、只读存储器、磁盘或光盘等。
总线可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(Peripheral Component,PCI)总线或扩展工业标准体系结构(ExtendedIndustry Standard Architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本申请附图中的总线并不限定仅有一根总线或一种类型的总线。
上述存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。存储介质可以是通用或专用计算机能够存取的任何可用介质。
一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于专用集成电路(Application Specific Integrated Circuits,简称:ASIC)中。当然,处理器和存储介质也可以作为分立组件存在于电子设备中。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。