CN117724732A - 用于电子设备软件更新的方法及系统 - Google Patents
用于电子设备软件更新的方法及系统 Download PDFInfo
- Publication number
- CN117724732A CN117724732A CN202211094518.7A CN202211094518A CN117724732A CN 117724732 A CN117724732 A CN 117724732A CN 202211094518 A CN202211094518 A CN 202211094518A CN 117724732 A CN117724732 A CN 117724732A
- Authority
- CN
- China
- Prior art keywords
- software
- electronic device
- storage area
- address
- operating system
- 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 63
- 238000004891 communication Methods 0.000 claims description 12
- 230000006870 function Effects 0.000 description 24
- 238000005516 engineering process Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 11
- 230000004044 response Effects 0.000 description 8
- 230000004913 activation Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 4
- 238000012790 confirmation Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 238000003745 diagnosis Methods 0.000 description 3
- 230000003213 activating effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000012631 diagnostic technique Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 229940077002 keystone Drugs 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Landscapes
- Stored Programmes (AREA)
Abstract
本发明涉及用于电子设备软件更新的方法及系统。该方法包括:接收软件更新请求;识别与存储在地址存储单元中的地址相关联的第一存储区域的第一操作系统;使用第一操作系统基于收到的软件更新版本对第二存储区域中的软件进行更新;以及基于更新结果,确定第一操作系统是否将第二存储区域的首地址存储到地址存储单元中。
Description
技术领域
本发明涉及电子设备软件更新领域,并且更具体地涉及用于车辆电子设备软件更新的方法和系统以及具有软件自更新能力的车载电子设备。
背景技术
在车辆诊断领域中,车辆诊断系统物理上被分为诊断设备与电子控制单元(Electronic Control Unit:ECU)两端,即,诊断设备通过车辆诊断口与车辆ECU相连并进行通信,这是当前最主要的车辆故障检测与诊断技术。
近年来,随着物联网以及车联网的快速发展,传统车辆诊断技术与互联网信息技术结合,将早已在手机等智能终端固件上升级使用的空中下载(Over the Air:OTA)技术覆盖到了车辆端。凭借OTA技术,车辆主机厂可以实现对车辆端软件的远程更新。
在车辆OTA过程中,需要具备更新其他模块以及模块自身软件的能力的自更新模块。如果自更新模块在软件升级过程中出现异常,则将导致整车功能无法正常工作,且无法再更新其他模块。客户只能将车辆送至4S店利用传统诊断设备进行手动更新,用户体验较差。
发明内容
为了解决或至少缓解以上问题中的一个或多个,提供了以下技术方案。
按照本发明的第一方面,提供一种用于电子设备软件更新的方法。该方法包括:接收软件更新请求;识别与存储在地址存储单元中的地址相关联的第一存储区域的第一操作系统;使用第一操作系统基于收到的软件更新版本对第二存储区域中的软件进行更新;以及基于更新结果,确定所述第一操作系统是否将第二存储区域的首地址存储到地址存储单元中。
根据本发明一实施例的方法,其中,对第二存储区域中的软件进行更新包括:第一操作系统从第二存储区域的第二操作系统中读取第二存储区域的首地址;根据电子设备的软件更新流程,对第二存储区域中的软件进行更新;以及在结束对第二存储区域中的软件的更新后,使用第一操作系统更新与第二存储区域中的软件相关联的软件状态标记以指示第二存储区域中软件的软件状态。
根据本发明一实施例的方法还包括:如果更新结果为成功,则第一操作系统将第二存储区域的首地址存储到地址存储单元中。
根据本发明一实施例的方法还包括:如果更新结果为不成功,则第一操作系统不将第二存储区域的首地址存储到地址存储单元中。
根据本发明一实施例的方法,其中,在电子设备的正常工作期间,仅由第一存储区域和第二存储区域中与存储在地址存储单元中的地址相关联的一个存储区域支持电子设备的软件功能。
根据本发明一实施例的方法,其中,第一操作系统和第二操作系统均为交换(swap)系统。
根据本发明一实施例的方法,其中,通过电子设备的通信接口接收软件更新请求。
根据本发明一实施例的方法还包括:在第一操作系统将第二存储区域的首地址存储到地址存储单元中后,重启电子设备,使得以第二存储区域中的更新后的软件操作电子设备。
根据本发明一实施例的方法还包括:在以更新后的软件操作电子设备后,使用第二操作系统基于收到的软件更新版本对第一存储区域中的软件进行更新;以及在结束对第一存储区域中的软件的更新后,更新与第一存储区域中的软件相关联的软件状态标记以指示第一存储区域中软件的软件状态。
根据本发明一实施例的方法,其中,电子设备为车载电子设备。
根据本发明一实施例的方法还包括:在识别第一操作系统之前,检查与车载电子设备相关联的车辆的整车车辆状态。
根据本发明一实施例的方法,其中,车载电子设备包括远程信息处理盒(Telematics-Box:T-Box)模块和/或网关模块。
按照本发明的第二方面,提供一种用于电子设备软件更新的系统。该系统包括电子设备以及与电子设备通信耦合的服务器,其中,电子设备配置成从服务器接收软件更新版本,并且执行根据本发明的第一方面的一个或多个方法。
按照本发明的第三方面,提供一种电子设备。该电子设备包括处理器和存储器。存储器与处理器通信耦合并且存储有计算机可执行指令,其中,指令在被处理器执行时使处理器执行根据本发明的第一方面的一个或多个方法。
按照本发明的第四方面,提供一种在其上存储有计算机可执行指令的计算机可读存储介质,其中,指令当被处理器执行时使处理器执行根据本发明的第一方面的一个或多个方法。
通过根据本发明的一个或多个实施例的用于车辆电子设备软件更新的方法和系统以及具有软件自更新能力的车载电子设备,本发明可以提供一种用于车辆端模块自更新的模块软件设计方案,从而实现车载电子设备/模块在不具备最小系统模块的情况下实现对自身软件系统更新的操作。
附图说明
本发明的上述和/或其它方面和优点将通过以下结合附图的各个方面的描述变得更加清晰和更容易理解,附图中相同或相似的单元采用相同的标号表示。在附图中:
图1为按照本发明的一个实施例的用于电子设备软件更新的系统的框图;
图2为按照本发明的一个实施例的电子设备中存储器的存储区域的示意图;以及
图3为按照本发明的一个实施例的用于电子设备软件更新的方法的流程图。
具体实施方式
以下具体实施方式的描述本质上仅仅是示例性的,并且不旨在限制所公开的技术或所公开的技术的应用和用途。此外,不意图受在前述技术领域、背景技术或以下具体实施方式中呈现的任何明示或暗示的理论的约束。
在实施例的以下详细描述中,阐述了许多具体细节以便提供对所公开技术的更透彻理解。然而,对于本领域普通技术人员显而易见的是,可以在没有这些具体细节的情况下实践所公开的技术。在其他实例中,没有详细描述公知的特征,以避免不必要地使描述复杂化。
诸如“包含”和“包括”之类的用语表示除了具有在说明书中有直接和明确表述的单元和步骤以外,本发明的技术方案也不排除具有未被直接或明确表述的其它单元和步骤的情形。
近年来,受到物联网的冲击以及随着车联网的快速发展,传统车辆诊断技术与互联网信息技术结合,将早已在手机等智能终端固件升级上使用的OTA技术覆盖到了车端,借此,主机厂实现了对车辆端软件的远程更新。并且,伴随着车端互联娱乐功能的需求日益增加,车载电子化网络化成为了主流发展趋势,越来越多的电子控制单元被应用到了车辆上,使得车辆网络的复杂程度前所未有。尤其是从2015年起,针对车辆端设备的黑客攻击行为频频不断,确保车辆信息安全成为了未来消费者性命攸关的重要基石,OTA技术也同时成为了主机厂更快响应模块端软件漏洞修复的重要途径。
具备卓越OTA技术的主机厂可利用远程更新推送实现对车辆进行消费者的定制化,也就是说,OTA服务器可针对不同消费者习惯的车辆,更新不同的软件功能,来满足不同的用户体验。
在车辆OTA过程中,如具备诊断功能的远程信息处理盒(Telematics-Box:T-Box),或是网关(Gateway)模块根据各大主机厂的策略不同,都有可能作为车辆的远程刷新主节点。这些模块需要具备刷新其他目标模块以及更新模块自身软件的能力。
对于被刷新模块,会由于接收到来自刷新主节点的刷新请求进入刷新引导(Boot)模式,此时,若刷写过程出现了异常,会导致软件升级失败,此时被刷新的模块将会停留在刷新Boot模式且再无法支持正常功能。若被更新节点刷新失败,则可通过刷新主节点再次更新来恢复功能。
但对于刷新主节点自身来说,若不具备更新模块自身的能力,那么当主节点模块的软件出现故障后,将导致整车功能无法正常工作,且无法再更新其他模块。客户只能将车辆送至车辆维护中心利用传统诊断设备进行手动更新,用户体验较差。
对于选择网关模块的主机厂来说,工厂制造环节中,在总装终检线刷新工位,网关的刷新失败将会导致整车模块的无法通讯,因此选择此方案,可保证模块在进行刷新时,不会进入到不支持网关路由的Boot模式,并且若模块具备自刷新功能,可节约工厂量产时所需要的刷新时间。
本发明因此提供一种用于车辆电子设备/模块实现对自身软件系统进行更新的新型模块软件设计方案。
在下文中,将参考附图详细地描述根据本发明的各个示例性实施例,其中术语“电子设备”(或“车载电子设备”)和“电子模块”(或“车载电子模块”)可被互换地使用,“程序”和“软件”可被互换地使用,而“升级”和“更新”可被互换地使用。此外,除非另有明确说明,否则术语“第一”、“第二”、“第三”等旨在区分它们修饰的特定名词(例如,元素、区域、模块、活动、操作等),但不旨在指示被修饰名词的任何类型的顺序、等级、重要性、时间序列或层级。例如,“第一X”和“第二X”旨在表示两个独立的X元素,它们不必受这两个元素的任何顺序、等级、重要性、时间序列或层级限制。
图1为按照本发明的一个实施例的用于电子设备软件更新的系统的框图,并且图2为按照本发明的一个实施例的电子设备中存储器的存储区域的示意图。
如图1中所示,用于电子设备软件更新的系统可以包括例如车载电子设备的电子设备以及比如云端发生器的服务器,例如OTA服务器。电子设备可以包括处理器、存储器和能够实现有线和/或无线通信的通信接口。电子设备可以通过有线和/或无线通信网络和/或有线和/或无线通信链路与服务器通信耦合。在一些实施例中,电子设备可以包括各种车载电子设备,并且车载电子设备可以包括T-Box模块和/或网关模块。
包括在电子设备中的存储器可以存储有各种软件和/或数据,供包括在电子设备中的处理器执行,从而实现车辆的各种控制功能和/或互联娱乐功能。
服务器可以是云端服务器,并且可以利用OTA技术向相关联的电子设备远程推送与该电子设备相关联的软件更新版本,供电子设备更新其相关软件。
如图2中所示,电子设备的存储器可以包括相互独立的存储空间区域,比如第一存储区域和第二存储区域,并且用于操作电子设备的软件及其相关的功能数据均被存储在第一存储区域和第二存储区域,使得第一存储区域和第二存储区域可以互为彼此的备份。在电子设备的正常工作期间,仅由第一存储区域和第二存储区域中之一存储的软件和功能数据来操作电子设备,从而支持电子设备的功能。
存储器还可以包括存储用于初始化电子设备的初始化软件/程序的地址空间、存储引导加载软件/程序的地址空间以及用于存储与第一存储区域和第二存储区域中之一相关联的地址的存储空间(下文称为地址存储单元、激活区域地址单元或活动闪存块地址(Active Flash Block Address)单元)。与第一存储区域相关联的Swap系统可以存储在存储器的单独地址空间中,并且与第二存储区域相关联的Swap系统可以存储在存储器的另一单独地址空间中。此外,存储器还包括用于存储与在第一存储区域中存储的软件相关联的软件状态标记的地址空间,以及用于存储与在第二存储区域中存储的软件相关联的软件状态标记的额外地址空间。
在一些实施例中,电子设备可以响应于收到的软件更新版本自动地或者经由用户确认而实施本发明提供的全新的电子设备/模块软件系统设计方案,从而实现电子设备在不具备最小系统模块的情况下实现对自身软件系统更新的操作。
在一些实施例中,电子设备中包括的处理器可以响应于收到的软件更新版本自动地或者经由用户确认而实施本发明提供的全新的电子设备软件系统设计方案,从而实现电子设备在不具备最小系统模块的情况下实现对自身软件系统更新的操作。
在一些实施例中,存储在计算机可读存储介质上的计算机可执行指令在被电子设备的处理器执行时使电子设备或包括在该电子设备中的处理器响应于收到的软件更新版本自动地或者经由用户确认而实施本发明提供的全新的电子设备软件系统设计方案,从而实现电子设备在不具备最小系统模块的情况下实现对自身软件系统更新的操作。
根据本发明的车载电子设备自更新的模块软件设计方案,可以在保留原有自刷新模块软件功能数据基础上,在电子设备的存储器中另开辟一块独立的刷写Flash区域(比如图2中示出的第二存储区域),备份存储模块激活区域(比如图2中示出的第一存储区域)的软件功能数据,两者分别称为激活区域与备份区域。当电子设备正常工作时,有且仅有激活区域的程序支持相关功能。在一些实施例中,取决于存储器中地址存储单元或激活区域地址单元中存储的地址,图2中示出的第一和第二存储区域中之一可以是激活区域,而第一和第二存储区域中另一个可以是备份区域。
电子设备上电且完成初始化后,需先判断当前激活区域的地址,并以此作为提供刷新正常功能的区域。处理器可以查询指示该区域中软件的软件状态的软件状态标记,并且对此区域的刷新状态进行判断,若软件状态标记指示区域数据不完整或无效,则电子设备停留在刷新Boot模式下,否则正常启动功能。
在正常工作过程中,若接收到电子设备软件自更新请求,则可以在自刷新模块内部开始激活区域更新备份区域的流程。在一些实施例中,可以在开始激活区域更新备份区域的流程之前完成整车车辆状态检查。在一些实施例中,激活区域解析更新数据对备份区域实施升级。在一些实施例中,响应于经由电子设备的通信接口接收到从图1中示出的服务器远程推送的软件更新版本,在电子设备内生成软件自更新请求。在一些实施例中,响应于经由通信接口接收到来自车辆的用户的软件更新指示而在电子设备内生成软件自更新请求。
激活区域的Swap系统从备份区域的Swap系统中读取当前备份区域的地址,并根据既定的刷新流程,利用收到的软件更新版本完成对备份区域的软件更新。
激活区域成功更新备份区域后,激活区域的Swap系统将指示备份区域中软件的软件状态的软件状态标记,比如Swap指示符标记(Indicator Flag)更新为当前模块刷新状态,用于指示当前备份区域中软件的软件状态。Swap指示符标记可以例如包括刷新完整(complete)状态、更新(update)状态、无效(Invalid)状态或未知(Unknown)状态。存储器中存储该值的存储单元可以独立于备份区域中用于存储软件及相关数据的存储单元,即电子设备软件的更新版本不应直接改变Swap Indicator Flag的值。备份区域的SwapIndicator Flag仅支持在升级结束后由激活区域的Swap系统更新。
如果备份区域中软件更新成功,则备份区域中当前存储更新后的软件,并且激活区域的Swap系统可以将自身与备份区域的起始逻辑地址按块(Block)切换逻辑进行变换。比如,激活区域的Swap系统可以将备份区域的起始逻辑地址(也称为首地址)存储到图2中示出的存储器的地址存储单元中,以替换当前存储的激活区域的起始逻辑地址。这样,电子设备/模块在重启后,Boot程序可以通过读取图2中示出的存储器的地址存储单元中存储的备份区域的首地址而跳转到更新后的备份区域中的Flash块开始正常工作,从而以更新的软件操作电子设备,并且确保了电子设备当前运行的功能为最新状态。此时,软件更新之前的激活区域和备份区域的角色可以互换,即电子设备当前运行的是软件更新之前备份区域中的软件,并且停用软件更新之前激活区域中的软件。
在一些实施例中,在以更新后的软件操作电子设备后,可以根据前述软件更新过程,使用当前的激活区域(即软件更新之前的备份区域)的Swap系统基于收到的软件更新版本对当前的备份区域(即软件更新之前的激活区域)中的软件进行更新,并在结束软件更新之后,更新与角色互换之后的备份区域中的软件相关联的软件状态标记以指示当前的备份区域中软件的软件状态。在完成当前的激活区域更新当前的备份区域中软件的过程之后,如图2中示出的第一存储区域和第二存储区域均存储更新后的最新软件版本,并且二者中之一的首地址被存储到图2中示出的地址存储单元中,以指示使用与该首地址相对应的第一存储区域或第二存储区域中的软件来操作电子设备,从而完成电子设备的软件自更新过程。
图3为按照本发明的一个实施例的用于电子设备软件更新的方法的流程图。执行该方法可以实施根据本发明的用于车辆电子设备/模块实现对自身软件系统进行更新的新型模块软件设计方案。
如图3中所示,方法300可以包括在步骤310接收软件更新请求。在一些实施例中,可以通过电子设备的通信接口接收软件更新请求。在一些实施例中,可以响应于经由电子设备的通信接口接收到从图1中示出的服务器远程推送的软件更新版本,在电子设备内生成软件自更新请求。在一些实施例中,可以响应于经由通信接口接收到来自车辆的用户的软件更新指示而在电子设备内生成软件自更新请求。
方法300还可以包括在步骤320识别Swap系统。在一些实施例中,可以识别与存储在图2中所示的存储器的地址存储单元(也可称为“激活区域地址单元”)中的地址相关联的第一存储区域的第一操作系统。在一些实施例中,该第一操作系统可以是Swap系统。
方法300还可以包括在步骤330使用识别的Swap系统来更新软件。在一些实施例中,可以使用识别的第一操作系统基于收到的软件更新版本对第二存储区域中的软件进行更新。
在一些实施例中,在步骤330对第二存储区域中的软件进行更新可以包括:第一操作系统从第二存储区域的第二操作系统中读取第二存储区域的首地址;根据电子设备的软件更新流程,对第二存储区域中的软件进行更新;以及在结束对第二存储区域中的软件的更新后,使用第一操作系统更新与第二存储区域中的软件相关联的软件状态标记以指示第二存储区域中软件的软件状态。在一些实施例中,该第二操作系统也可以是Swap系统。
方法300还可以包括在步骤340基于更新结果确定是否替换地址存储单元中的地址。
在一些实施例中,方法300还可以包括如果步骤320中的软件更新结果为成功,则第一操作系统将第二存储区域的首地址存储到地址图2中所示的存储器的地址存储单元中,反之则第一操作系统不将第二存储区域的首地址存储到该地址存储单元中。该地址存储单元仅存储第一存储区域和第二存储区域中之一的首地址,使得在电子设备的正常工作期间,仅由与存储在该地址存储单元中的地址相关联的一个存储区域支持电子设备/模块的软件功能。
在一些实施例中,方法300还可以包括在第一操作系统将第二存储区域的首地址存储到地址存储单元中后,重启电子设备,使得以第二存储区域中的更新后的软件操作电子设备。在一些实施例中,方法300还可以包括在以更新后的软件操作电子设备/模块后,使用第二操作系统基于收到的软件更新版本对第一存储区域中的软件进行更新,并且在结束对第一存储区域中的软件的更新后,更新与第一存储区域中的软件相关联的软件状态标记以指示第一存储区域中软件的软件状态。
在一些实施例中,电子设备可以是与车辆相关联的车载电子设备,并且方法300还可以包括在步骤320识别第一操作系统之前,检查与车载电子设备相关联的车辆的整车车辆状态。
如上所述,通过执行图3中所示的方法300可以实施根据本发明的用于车辆电子设备实现对自身软件系统进行更新的新型模块软件设计方案。
根据本发明提供的用于电子设备实现对自身软件系统进行更新的新型模块软件设计方案,可以在电子设备的存储器的刷写区域P-Flash中开辟两个相互独立的存储空间Flash块,分别存储两套支持相同功能的程序,两块区域可以分别编号Block0和Block1(比如图2中所示的第一存储区域和第二存储区域),且两个区域可以互为备份。每个Flash块可以存在“激活”与“非激活”两种形态。“激活”是指当前区域中的程序被选择提供电子设备的正常功能,且具备对另一区域的软件进行更新的能力,因此被称作“激活区域”,而另一区域则称为“备份区域”,其处于非激活状态,其中“非激活”则是指当前数据区域需要被更新。激活区域和备份区域互为相对关系,其中一个处于“激活”状态时,另一个则处于“非激活”状态。在电子设备的正常工作时,仅需要一块激活区域提供功能运行即可。
电子设备的存储器中有一“激活区域地址单元”(比如图2中所示的存储器中的地址存储单元)存储了当前激活区域的地址。模块在完成初始化后会首先读取此处存储的地址来作为激活区域的地址。
在一次电子设备自刷新事件中,自刷新模块若收到了自更新的更新请求,此时被选作激活区域的软件会负责更新另一块备份区域,当前的更新请求不仅限于来自OTA远程刷新请求以及工厂制造环节的外部诊断设备的更新请求。
两个Flash块可以分别对应于一套独立的软件系统,称之为Swap系统,激活区域的Swap系统将会负责完成对备份区域的数据更新。存储器中还包括用于存储Swap IndicatorFlag的存储单元,Swap Indicator Flag用于指示当前Block的软件状态,如刷新完整(complete)状态,更新(update)状态,无效(Invalid)状态,未知(Unknown)状态。存储该值的sector独立于Flash块软件数据,即模块软件的更新,不应直接改变Swap IndicatorFlag的值。备份区域的Swap Indicator Flag仅支持在升级结束后由激活区域的Swap系统更新。当自更新模块收到自更新请求后,首先进行自身状态检查,并读取出激活区域的地址,来提供刷新正常功能,然后此激活区域会完成如下操作:从备份区域的Swap系统中得到当前需被更新模块的首地址;按主机厂定义的模块刷新策略对备份区域完成软件更新;更新备份区域中Swap Indicator Flag存储的Flash块刷新状态;当备份区域的软件升级完成后,模块会将备份区域的地址更新到激活区域地址中,以确保下一次模块运行后,当前软件为最新状态。
在一些实施例中,在以更新后的软件操作电子设备后,可以根据前述软件更新过程,使用当前的激活区域(即软件更新之前的备份区域)的Swap系统基于收到的软件更新版本对当前的备份区域(即软件更新之前的激活区域)中的软件进行更新,并在结束软件更新之后,更新与角色互换之后的备份区域中的软件相关联的软件状态标记以指示当前的备份区域中软件的软件状态。在完成当前的激活区域更新当前的备份区域中软件的过程之后,如图2中示出的第一存储器区域和第二存储器区域均存储更新后的最新软件版本,并且二者中之一的首地址被存储到图2中示出的地址存储单元中,以指示使用与该首地址相对应的第一存储器区域或第二存储器区域中的软件来操作电子设备,从而完成电子设备软件的自更新过程。
根据本发明的电子设备/模块软件升级的模块软件设计方案可以主要适用于售后阶段的OTA远程刷新场景以及工厂制造环节,自刷新的触发方式可以不限于OTA刷新主节点被远程触发或者被外部诊断设备触发。
根据本发明的电子设备/模块软件升级的模块软件设计方案将应用于模块保持住正常功能状态下更新自身软件版本的需求。
与现有技术相比,本模块软件设计方案可以实现不具备最小系统模块的自更新功能,并且可以实现模块更新失败后仍正常支持功能,而非进入到无法正常工作的Boot模块。
提供本文中提出的实施例和示例,以便最好地说明按照本发明及其特定应用的实施例,并且由此使本领域的技术人员能够实施和使用本发明。但是,本领域的技术人员将领会,仅为了便于说明和举例而提供以上描述和示例。所提出的描述不是意在涵盖本发明的各个方面或者将本发明局限于所公开的精确形式。
Claims (15)
1.一种用于电子设备软件更新的方法,其特征在于,所述方法包括:
接收软件更新请求;
识别与存储在地址存储单元中的地址相关联的第一存储区域的第一操作系统;
使用所述第一操作系统基于收到的软件更新版本对第二存储区域中的软件进行更新;以及
基于更新结果,确定所述第一操作系统是否将所述第二存储区域的首地址存储到所述地址存储单元中。
2.根据权利要求1所述的方法,其中,对所述第二存储区域中的软件进行更新包括:
所述第一操作系统从所述第二存储区域的第二操作系统中读取所述第二存储区域的首地址;
根据所述电子设备的软件更新流程,对所述第二存储区域中的软件进行更新;以及
在结束对所述第二存储区域中的软件的更新后,使用所述第一操作系统更新与所述第二存储区域中的软件相关联的软件状态标记以指示所述第二存储区域中软件的软件状态。
3.根据权利要求1所述的方法,还包括:如果所述更新结果为成功,则所述第一操作系统将所述第二存储区域的首地址存储到所述地址存储单元中。
4.根据权利要求1所述的方法,还包括:如果所述更新结果为不成功,则所述第一操作系统不将所述第二存储区域的首地址存储到所述地址存储单元中。
5.根据权利要求1所述的方法,其中,在所述电子设备的正常工作期间,仅由所述第一存储区域和所述第二存储区域中与存储在所述地址存储单元中的地址相关联的一个存储区域支持所述电子设备的功能。
6.根据权利要求2所述的方法,其中,所述第一操作系统和所述第二操作系统均为交换(swap)系统。
7.根据权利要求1所述的方法,其中,通过所述电子设备的通信接口接收所述软件更新请求。
8.根据权利要求3所述的方法,还包括:在所述第一操作系统将所述第二存储区域的首地址存储到所述地址存储单元中后,重启所述电子设备,使得以所述第二存储区域中的更新后的软件操作所述电子设备。
9. 根据权利要求8所述的方法,还包括:
在以所述更新后的软件操作所述电子设备后,使用所述第二操作系统基于所述收到的软件更新版本对所述第一存储区域中的软件进行更新;以及
在结束对所述第一存储区域中的软件的更新后,更新与所述第一存储区域中的软件相关联的软件状态标记以指示所述第一存储区域中软件的软件状态。
10.根据权利要求1-9中任一项所述的方法,其中,所述电子设备为车载电子设备。
11.根据权利要求10所述的方法,还包括:在识别所述第一操作系统之前,检查与所述车载电子设备相关联的车辆的整车车辆状态。
12.根据权利要求10所述的方法,其中,所述车载电子设备包括远程信息处理盒(Telematics-Box:T-Box)模块和/或网关模块。
13. 一种用于电子设备软件更新的系统,其特征在于,所述系统包括:
电子设备;以及
与所述电子设备通信耦合的服务器,
其中,所述电子设备配置成从所述服务器接收软件更新版本,并且执行根据权利要求1-12中任一项所述的方法。
14. 一种电子设备,其特征在于,所述电子设备包括:
处理器;和
存储器,其与所述处理器通信耦合并且存储有计算机可执行指令,所述指令在被所述处理器执行时使所述处理器执行根据权利要求1-12中任一项所述的方法。
15.一种在其上存储有计算机可执行指令的计算机可读存储介质,所述指令当被处理器执行时使所述处理器执行根据权利要求1-12中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211094518.7A CN117724732A (zh) | 2022-09-08 | 2022-09-08 | 用于电子设备软件更新的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211094518.7A CN117724732A (zh) | 2022-09-08 | 2022-09-08 | 用于电子设备软件更新的方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117724732A true CN117724732A (zh) | 2024-03-19 |
Family
ID=90198432
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211094518.7A Pending CN117724732A (zh) | 2022-09-08 | 2022-09-08 | 用于电子设备软件更新的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117724732A (zh) |
-
2022
- 2022-09-08 CN CN202211094518.7A patent/CN117724732A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10866853B2 (en) | Self-healing learning system for one or more controllers | |
CN107531198B (zh) | 程序改写装置和程序改写方法 | |
JP4482029B2 (ja) | 無線基地局および無線基地局の運用方法 | |
CN105930236A (zh) | 一种基于BMS Bootloader升级的应用程序版本回退方法 | |
US10936306B2 (en) | Vehicle control system and software compatibility checking method | |
JP2019159399A5 (zh) | ||
CN112579135A (zh) | 用于车辆控制单元的刷写控制方法、系统及车辆 | |
CN214376406U (zh) | 集成电路、车载控制器以及车辆 | |
CN114895947A (zh) | 车载控制器的软件升级方法、装置、设备和存储介质 | |
CN106095474A (zh) | 用于更新运输工具中的软件的方法和装置 | |
CN117724732A (zh) | 用于电子设备软件更新的方法及系统 | |
CN116795408A (zh) | Ecu的软件升级方法、系统及车辆 | |
CN110688135A (zh) | 一种控制器的程序刷写方法、装置及介质 | |
CN110309018B (zh) | 充电设备系统切换方法、充电设备及可读存储介质 | |
CN113590388B (zh) | 一种基于uboot的spl回滚方法及装置、存储介质、终端 | |
CN117111980A (zh) | 一种基于Autosar的自适应应用升级方法及装置 | |
US20220222055A1 (en) | Center, management method, and non-transitory storage medium | |
CN114461254A (zh) | 一种软件程序更新方法和相关装置 | |
CN116048553A (zh) | 多核车载SoC软件升级分区切换方法及存储介质 | |
CN112988201A (zh) | 程序更新方法、装置以及电子设备 | |
CN116860342A (zh) | 车辆休眠唤醒方法 |
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 |