发明内容
本发明实施例提供一种终端驱动升级的方法及装置,通过使用终端版本中的逻辑操作程序,调用接收的驱动参数进行终端驱动升级,既节省了终端的存储空间成本,又避免了终端驱动升级失败导致终端无法工作的情况。
本发明实施例提供了一种终端驱动升级的方法,该方法包括:
将终端版本中驱动参数与逻辑操作程序分离,解析接收的驱动升级参数文件,将解析得到的所述驱动参数保存在内存中;
将所述内存中的所述驱动参数一次性写入驱动分区,进行终端驱动升级;
启动重启程序,触发终端版本中的所述逻辑操作程序调用所述驱动分区中的所述驱动参数。
相应的,本发明实施例提供了一种终端驱动升级的装置,包括:
解析单元,用于将终端版本中驱动参数与逻辑操作程序分离,解析接收的驱动升级参数文件,将解析得到的驱动参数保存在内存中;
写入单元,用于将所述内存中的所述驱动参数一次性写入驱动分区,进行终端驱动升级;
重启单元,用于启动重启程序,触发终端版本中的所述逻辑操作程序调用所述驱动分区中的所述驱动参数。
本发明实施例提供了一种终端驱动升级的方法及装置,用于解析接收的驱动升级参数文件,将解析得到的驱动参数保存在内存中;将所述内存中的驱动参数一次性写入驱动分区,进行终端驱动升级;启动重启程序,触发终端版本中的逻辑操作程序调用所述驱动分区中的驱动参数。使用本发明实施例提供的终端驱动升级的方法、装置及电子设备,通过使用终端版本中的逻辑操作程序,调用接收的驱动参数进行终端驱动升级,既节省了终端的存储空间成本,又避免了终端驱动升级失败导致终端无法工作的情况。
具体实施方式
下面结合各个附图对本发明实施例技术方案的主要实现原理、具体实施方式及其对应能够达到的有益效果进行详细地阐述。
为了解决现有技术存在的问题,本发明实施例提供一种终端驱动升级的方法,预先将终端版本中驱动代码的逻辑操作程序与驱动参数进行分离,其中参数部分是指驱动代码中经常变动的部分,在逻辑操作部分将其使用变量代替,然后将逻辑操作部分编译到终端版本中,之后只需要更新驱动参数即可,如图1所示,该方法包括以下步骤:
步骤101、解析接收的驱动升级参数文件,将解析得到的驱动参数保存在内存中;
具体的,预先将终端版本中驱动参数与逻辑操作程序分离后,在需要升级终端驱动时,终端接收驱动升级参数文件,将其写入终端中的文件系统,其中,接收驱动升级参数文件时,终端可以通过USB(Universal Serial Bus,通用串行总线)接口等从另一设备中获取,也可以在WLAN(Wireless Local AreaNetwork,无线局域网)中获取,还可以通过BTP(Bulk Transfer Protocol,成批转移协议)、空中协议等协议进行获取。
将驱动升级参数文件写入文件系统后,终端解析该驱动升级参数文件,然后将解析得到的驱动参数保存在内存中。较佳的,保存时,按照解析驱动参数的先后顺序,将解析得到的驱动参数保存在内存中。
步骤102、将内存中的驱动参数一次性写入驱动分区,进行终端驱动升级;
具体的,按照保存驱动参数的先后顺序,对内存中的驱动参数进行数据打包,然后将打包后的数据包一次性写入驱动分区。该数据包内的驱动参数可以覆盖原驱动参数,也可以不覆盖,而将原驱动参数作为备份保留。若在将数据包写入驱动分区的过程中,出现断电等意外情况,并不影响终端的正常工作。因为此时终端版本使用的驱动参数仍为原驱动参数,待终端重启时,可以重新解析文件系统中的驱动升级参数文件。若已经删除了文件系统中驱动升级参数文件,可以重新接收该驱动升级参数文件。
步骤103、启动重启程序,触发终端版本中的逻辑操作程序调用驱动分区中的驱动参数。
具体的,终端重启后,触发终端版本中的逻辑操作程序,调用驱动分区中相应的驱动参数行驱动升级,例如,逻辑操作程序为将参数A和参数B发送到中央处理器,此时,只需调用驱动分区中参数A相应的参数a、参数B相应的参数b,并发送到中央处理器即可。
通过上述描述,可以看出,使用本发明实施例提供的终端驱动升级的方法,通过预先将驱动代码中的逻辑操作部分和驱动参数部分分离,其中,逻辑操作部分编译在终端版本中,使用变量代替驱动参数部分。驱动升级时,只需要升级到新的驱动参数,待终端重启时,逻辑操作部分调用该新的驱动参数即可。
下面通过具体实施例对本发明实施例提供的终端驱动升级的方法进行详细说明,假设终端需要升级LCD(Liquid Crystal Display,液晶显示)驱动,一般LCD驱动可以实现的功能包括初始化功能、显示开功能、显示关功能、设置窗口功能等,假设现有技术中,调用终端版本中的LCD驱动,调节终端界面亮度的具体操作为:终端开机后,经过10秒将终端屏幕的LCD的电压调节为1V。使用本发明实施例提供的方法时,将终端版本中的LCD驱动的逻辑操作程序与驱动参数分离,在逻辑操作程序中使用变量代替具体的驱动参数,如:终端开机后,经过变量A将变量B的电压调节为变量C,变量A对应的驱动参数为a(10秒),变量B对应的驱动参数为b(LCD),变量C对应的驱动参数为c(1V)。使用本发明实施例提供的终端驱动升级的方法,对终端中的LCD驱动进行升级时,如图2所示,包括以下步骤:
步骤201、将接收的驱动升级参数文件写入文件系统;
具体的,终端需要升级终端驱动时,终端接收驱动升级参数文件,然后将其写入终端中的文件系统,其中,接收驱动升级参数文件时,终端可以通过USB接口等从另一设备中获取,也可以在WLAN中获取,还可以通过BTP、空中协议等协议进行获取。
步骤202、解析驱动升级参数文件,将解析得到的驱动参数保存在内存中;具体的,按照解析驱动参数的先后顺序,将解析得到的驱动参数保存在内存中,例如解析驱动升级参数文件时,先后解析出驱动参数a1、驱动参数b1、驱动参数c1,则先将驱动参数a1保存在内存中,然后将驱动参数b1保存在内存中,最后将驱动参数c1保存在内存中。
步骤203、将内存中的驱动参数一次性写入驱动分区,进行驱动升级;具体的,按照保存驱动参数的先后顺序,对内存中的驱动参数进行数据打包,然后将打包后的数据包一次性写入驱动分区,例如内存中先后保存了驱动参数a1、驱动参数b1、驱动参数c1,则进行数据打包时,也按照驱动参数a1、驱动参数b1、驱动参数c1的顺序将驱动参数压缩到数据包中。
步骤204、删除文件系统中的驱动升级参数文件;
上述步骤203和步骤204在执行时可以互换先后顺序。
若在将数据包写入驱动分区的过程中,出现断电等意外情况,并不影响终端的正常工作。因为终端版本使用的驱动参数仍为原驱动参数,待终端重启时,可以重新解析驱动升级参数文件。若已经删除了文件系统中驱动升级参数文件,可以重新接收该驱动升级参数文件。
步骤205、终端启动重启程序,调用驱动分区中的驱动参数。
具体的,终端重启后,启动逻辑操作程序,调用驱动分区中相应的驱动参数,例如逻辑操作程序调用驱动分区中变量A相应的驱动参数a1、变量B相应的驱动参数b1,变量C相应的驱动参数c1,替换驱动分区中的驱动参数a、驱动参数b、驱动参数c。
通过上述描述,可以看出,使用本发明实施例提供的终端驱动升级的方法,通过预先将驱动代码中的逻辑操作部分和驱动参数部分分离,其中,逻辑操作部分编译在终端版本中,使用变量代替驱动参数部分。驱动升级时,只需要升级到新的驱动参数,待终端重启时,逻辑操作部分调用该新的驱动参数即可。
相应的,本发明实施例还提供一种终端驱动升级的装置,如图3所示,具体包括:
解析单元301,用于解析接收的驱动升级参数文件,将解析得到的驱动参数保存在内存中;
写入单元302,用于将所述内存中的驱动参数一次性写入驱动分区,进行终端驱动升级;
重启单元303,用于启动重启程序,触发终端版本中的逻辑操作程序调用所述驱动分区中的驱动参数。
具体的,预先将终端版本中驱动参数与逻辑操作程序分离后,在需要升级终端驱动时,终端接收驱动升级参数文件,将其写入终端中的文件系统,其中,接收驱动升级参数文件时,终端可以通过USB接口等从另一设备中获取,也可以在WLAN中获取,还可以通过BTP、空中协议等协议进行获取。将驱动升级参数文件写入文件系统后,解析单元301解析该驱动升级参数文件,然后将解析得到的驱动参数保存在内存中。按照保存驱动参数的先后顺序,对内存中的驱动参数进行数据打包,然后写入单元302将打包后的数据包一次性写入驱动分区。该数据包内的驱动参数可以覆盖原驱动参数,也可以不覆盖,而将原驱动参数作为备份保留。
若在将数据包写入驱动分区的过程中,出现断电等意外情况使驱动升级中断,并不影响终端的正常工作。因为此时终端版本使用的驱动参数仍为原驱动参数,待终端重启时,可以重新解析驱动升级参数文件。若已经删除了文件系统中驱动升级参数文件,可以重新接收该驱动升级参数文件。终端重启后,重启单元303启动逻辑操作程序,调用驱动分区中相应的驱动参数行驱动升级。
较佳的,解析单元301,还用于按照解析驱动参数的先后顺序,将解析得到的驱动参数保存在内存中。
较佳的,上述装置还包括:接收单元304,用于将接收的驱动升级参数文件写入文件系统。
较佳的,上述装置还包括:删除单元305,用于写入单元302将内存中的驱动参数一次性写入驱动分区之后,删除文件系统中的所述驱动升级参数文件。
通过上述描述,可以看出,使用本发明实施例提供的终端驱动升级的装置,通过预先将驱动代码中的逻辑操作部分和驱动参数部分分离,其中,逻辑操作部分编译在终端版本中,使用变量代替驱动参数部分。驱动升级时,只需要升级到新的驱动参数,待终端重启时,逻辑操作部分调用该新的驱动参数即可。
相应的,本发明实施例还提供了一种设备,包括:驱动升级的装置;
该驱动升级的装置,包括:解析单元,用于解析接收的驱动升级参数文件,将解析得到的驱动参数保存在内存中;写入单元,用于将所述内存中的驱动参数一次性写入驱动分区,进行终端驱动升级;重启单元,用于启动重启程序,触发终端版本中的逻辑操作程序调用所述驱动分区中的驱动参数。
具体的,需要升级终端驱动时,设备中的驱动升级的装置接收驱动升级参数文件,将其写入终端中的文件系统,解析该驱动升级参数文件,然后将解析得到的驱动参数保存在内存中。按照保存驱动参数的先后顺序,对内存中的驱动参数进行数据打包,将打包后的数据包一次性写入驱动分区。若在将数据包写入驱动分区的过程中,出现断电等意外情况使驱动升级中断,并不影响终端的正常工作。因为此时终端版本使用的驱动参数仍为原驱动参数,待终端重启时,可以重新解析驱动升级参数文件。若已经删除了文件系统中驱动升级参数文件,可以重新接收该驱动升级参数文件。终端重启后,启动逻辑操作程序,调用驱动分区中相应的驱动参数。
通过上述描述,可以看出,使用本发明实施例提供的终端驱动升级的方法、装置及设备,通过预先将驱动代码中的逻辑操作部分和驱动参数部分分离,其中,逻辑操作部分编译在终端版本中,使用变量代替驱动参数部分。驱动升级时,只需要升级到新的驱动参数,待终端重启时,逻辑操作部分调用该新的驱动参数即可。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。