1.一种包括指令的非暂时性计算机可读介质,当由至少一个处理器运行时,所述指令使得所述至少一个处理器执行用于生成用于更新车辆中的电子控制单元ecu上的软件的更新包的操作,所述操作包括:
访问要存储在所述车辆中的所述ecu上的软件更新的多个属性;
访问存储在所述车辆中的所述ecu上的当前软件的对应的多个属性;
将所述多个属性与所述对应的多个属性进行比较;
生成表示在所述比较中确定的所述多个属性和所述对应的多个属性之间的差异的增量文件;以及
向所述ecu提供所述增量文件,其中,所述增量文件被配置为由所述ecu中的启动代码处理,所述启动代码使得所述增量文件能够在所述车辆中的所述ecu中运行。
2.根据权利要求1所述的非暂时性计算机可读介质,其中,所述启动代码被集成到所述增量文件中。
3.根据权利要求1所述的非暂时性计算机可读介质,其中,所述启动代码在所述增量文件被所述ecu接收之前被安装在所述ecu上。
4.根据权利要求1所述的非暂时性计算机可读介质,其中,所述启动代码被配置为初始化所述增量文件的运行时库。
5.根据权利要求1所述的非暂时性计算机可读介质,其中,所述启动代码被配置为更新所述ecu的程序计数器以运行包含在所述增量文件中的指令。
6.根据权利要求1所述的非暂时性计算机可读介质,其中,所述增量文件包括表示由所述软件更新所引用的变量的值的变量数据。
7.根据权利要求6所述的非暂时性计算机可读介质,其中,所述启动代码被配置为从所述增量文件中提取所述变量数据,并将所述变量数据放置到所述ecu可访问的存储器中。
8.根据权利要求1所述的非暂时性计算机可读介质,其中,所述增量文件包括用于更新所述ecu中的存储器地址的代码。
9.根据权利要求8所述的非暂时性计算机可读介质,其中,所述启动代码被配置为提取用于更新存储器地址的代码并更新所述ecu中的所述存储器地址。
10.根据权利要求1所述的非暂时性计算机可读介质,其中,所述ecu上的软件被映射到多个功能单元,并且所述ecu被配置为利用虚拟文件系统vfs来管理和跟踪所述多个功能单元中的每一个的一个或多个版本。
11.根据权利要求10所述的非暂时性计算机可读介质,其中,要存储在所述ecu上的所述软件更新的所述多个属性包括由所述vfs管理的所述多个功能单元中的至少一个。
12.根据权利要求1所述的非暂时性计算机可读介质,其中,所述指令还包括:
将第一网格应用于所述软件更新;
将第二网格应用于存储在所述ecu上的所述当前软件;以及
基于所述第一网格和所述第二网格的比较来标识所述多个属性和所述对应的多个属性。
13.根据权利要求12所述的非暂时性计算机可读介质,其中,所述第一网格在一个或多个维度上表示所述软件更新,所述一个或多个维度包括以下中的至少一个:
与所述软件更新相关联的二进制数据,
与所述软件更新相关联的源属性,以及
与所述软件更新相关联的映射文件。
14.根据权利要求1所述的非暂时性计算机可读介质,其中,至少部分地基于用于开发所述软件更新的编程语言来标识所述多个属性。
15.根据权利要求1所述的非暂时性计算机可读介质,其中,至少部分地基于所述软件更新的二进制文件分辨率来标识所述多个属性。
16.根据权利要求1所述的非暂时性计算机可读介质,其中,至少部分地基于与所述软件更新相关联的映射文件来标识所述多个属性。
17.根据权利要求1所述的非暂时性计算机可读介质,其中,所述软件更新是单片文件。
18.根据权利要求1所述的非暂时性计算机可读介质,其中,所述软件更新是与其它文件相互依赖的文件。
19.根据权利要求1所述的非暂时性计算机可读介质,其中,所述操作包括,在将所述增量文件提供给所述ecu之前,检查依赖性系统,以确定是否应该基于正被提供给所述ecu的所述增量文件来更新任何相互依赖的ecu。
20.根据权利要求19所述的非暂时性计算机可读介质,其中,所述操作还包括自动向相互依赖的ecu提供额外的增量文件,以在所述相互依赖的ecu上执行软件更新。
21.一种用于生成用于更新车辆中的电子控制单元ecu上的软件的更新包的系统,所述系统包括:
一个或多个处理器;以及
一个或多个存储器,其具有指令,当由所述一个或多个处理器运行时,所述指令使得所述一个或多个处理器执行以下操作:
访问要存储在所述车辆中的所述ecu上的软件更新的多个属性;
访问存储在所述车辆中的所述ecu上的当前软件的对应的多个属性;
将所述多个属性与所述对应的多个属性进行比较;
生成表示在所述比较中确定的所述多个属性和所述对应的多个属性之间的差异的增量文件;以及
向所述ecu提供所述增量文件,其中,所述增量文件被配置为由所述ecu中的启动代码处理,所述启动代码使得所述增量文件能够在所述车辆中的所述ecu中运行。
22.根据权利要求21所述的系统,其中,所述启动代码被配置为初始化所述增量文件的运行时库。
23.一种用于生成用于更新车辆中的电子控制单元ecu上的软件的更新包的计算机实施的方法,所述方法包括:
访问要存储在所述车辆中的所述ecu上的软件更新的多个属性;
访问存储在所述车辆中的所述ecu上的当前软件的对应的多个属性;
将所述多个属性与所述对应的多个属性进行比较;
生成表示在所述比较中确定的所述多个属性和所述对应的多个属性之间的差异的增量文件;以及
向所述ecu提供所述增量文件,其中,所述增量文件被配置为由所述ecu中的启动代码处理,所述启动代码使得所述增量文件能够在所述车辆中的所述ecu中运行。
24.根据权利要求23所述的方法,其中,所述启动代码被配置为初始化所述增量文件的运行时库。