功能扩展加载方法及装置与流程
本说明书实施例涉及仿真,特别涉及一种功能扩展加载方法及装置。
背景技术:
1、随着仿真技术的不断发展,仿真系统的应用场景日益复杂,涉及机器人控制、自动驾驶、工业数字孪生、虚拟战场推演等多个领域。现代仿真系统通常需要集成多种功能模块,例如物理引擎、传感器模拟、数据记录、可视化交互、自动化控制等,以满足不同应用场景下的多样化需求。
2、在仿真系统的实际应用中,不同场景对功能模块的需求往往存在显著差异。例如,某些场景可能侧重于高精度的物理模拟和实时控制,另一些场景则可能更关注大规模数据采集和可视化呈现。为了适应这种多样性,仿真系统通常需要具备灵活的功能扩展能力,使得系统可以根据具体场景的需要动态地添加、替换或移除功能模块,而无需修改系统核心代码。目前,仿真系统的功能扩展通常采用插件机制或动态加载方式实现,即预先定义好扩展接口,将功能模块以插件形式集成至系统主框架中,通过系统启动时的配置或运行时的动态加载来启用相应的功能。
3、因此,如何在保证仿真系统稳定性和可扩展性的前提下,实现功能扩展的有效加载与管理,是目前亟需解决的问题。
技术实现思路
1、有鉴于此,本说明书实施例提供了一种功能扩展加载方法。本说明书一个或者多个实施例同时涉及一种功能扩展加载装置,一种计算设备,一种计算机可读存储介质以及一种计算机程序产品,以解决现有技术中存在的技术缺陷。
2、根据本说明书实施例的第一方面,提供了一种功能扩展加载方法,包括:
3、确定目标仿真场景对应的仿真模型,以及所述仿真模型对应的功能扩展声明,其中,所述功能扩展声明中包括目标功能扩展的扩展配置信息,所述扩展配置信息包括用于指示所述至少一个功能扩展对应的运行域标识;
4、根据所述目标功能扩展的扩展配置信息确定所述目标功能扩展对应的运行域标识,并按照所述运行域标识将所述目标功能扩展分配至对应的目标运行域,其中,所述目标运行域包括用于仿真循环的物理运行域、用于隔离计算的独立运行域,以及用于可视化的可视运行域;
5、根据所述功能扩展声明确定所述目标功能扩展对应的私有配置参数,根据所述私有配置参数在所述目标运行域中生成所述目标功能扩展对应的运行环境;
6、在所述运行环境中根据所述功能扩展声明创建所述目标功能扩展对应的待注册功能,并对所述待注册功能进行冲突校验;
7、在冲突校验通过的情况下,根据所述待注册功能确定所述目标功能扩展对应的目标注册功能,确定所述目标功能扩展加载完成;在冲突校验不通过的情况下,删除所述待注册功能并停止加载所述目标功能扩展。
8、根据本说明书实施例的第二方面,提供了一种功能扩展加载装置,包括:
9、确定模块,被配置为确定目标仿真场景对应的仿真模型,以及所述仿真模型对应的功能扩展声明,其中,所述功能扩展声明中包括目标功能扩展的扩展配置信息,所述扩展配置信息包括用于指示所述至少一个功能扩展对应的运行域标识;
10、分配模块,被配置为根据所述目标功能扩展的扩展配置信息确定所述目标功能扩展对应的运行域标识,并按照所述运行域标识将所述目标功能扩展分配至对应的目标运行域,其中,所述目标运行域包括用于仿真循环的物理运行域、用于隔离计算的独立运行域,以及用于可视化的可视运行域;
11、生成模块,被配置为根据所述功能扩展声明确定所述目标功能扩展对应的私有配置参数,根据所述私有配置参数在所述目标运行域中生成所述目标功能扩展对应的运行环境;
12、检验模块,被配置为在所述运行环境中根据所述功能扩展声明创建所述目标功能扩展对应的待注册功能,并对所述待注册功能进行冲突校验;
13、在冲突校验通过的情况下,根据所述待注册功能确定所述目标功能扩展对应的目标注册功能,确定所述目标功能扩展加载完成;在冲突校验不通过的情况下,删除所述待注册功能并停止加载所述目标功能扩展。
14、根据本说明书实施例的第三方面,提供了一种计算设备,包括:
15、存储器和处理器;
16、所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,该计算机可执行指令被处理器执行时实现上述功能扩展加载方法的步骤。
17、根据本说明书实施例的第四方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,该指令被处理器执行时实现上述功能扩展加载方法的步骤。
18、根据本说明书实施例的第五方面,提供了一种计算机程序产品,包括计算机程序或指令,该计算机程序或指令被处理器执行时实现上述功能扩展加载方法的步骤。
19、本说明书一个实施例实现了通过获取与仿真模型关联的扩展声明,并按照声明中的运行域标识将不同功能扩展分配至物理运行域、独立进程运行域和可视运行域,使不同特性的功能扩展能够在各自适宜的环境中加载和运行,避免了因运行环境不匹配导致的性能下降或接口不可用问题,既保证了物理仿真循环的实时性不受干扰,又实现了重计算任务的有效隔离和可视化交互的独立运行;通过根据功能扩展声明确定私有配置参数并在目标运行域中生成独立的运行环境,使每个功能扩展仅能访问自身的私有配置参数和宿主显式授权的服务接口,杜绝了传统方案中多扩展共用全局参数导致的重名覆盖和参数泄漏问题,同时防止了扩展越权访问非授权服务,显著提升了系统的安全性和稳定性;通过在运行环境中创建待注册功能并进行冲突校验,在检测到冲突时立即丢弃待注册功能并停止加载,而在校验通过后才使待注册功能生效并完成加载,确保功能扩展在注册过程中不会污染宿主全局状态,彻底避免了扩展加载异常后残留不完整注册信息的问题,保证了系统在扩展加载过程中的一致性;当仿真场景切换时,通过控制各目标运行域释放当前模型关联的扩展资源并返回重新获取新模型对应的功能扩展声明,使扩展集合随模型切换自动完成卸载和重建,保证了场景切换后加载的扩展与当前模型严格匹配,避免了旧扩展残留导致的功能错配问题。解决了仿真系统在多场景、多模型条件下功能扩展加载的环境适配、资源隔离、安全注册和场景同步问题,显著提升了仿真系统的稳定性、灵活性和可扩展性。
1.一种功能扩展加载方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,确定目标仿真场景对应的仿真模型,以及所述仿真模型对应的功能扩展声明,包括:
3.根据权利要求1所述的方法,其特征在于,按照所述运行域标识将所述目标功能扩展分配至对应的目标运行域,包括:
4.根据权利要求1所述的方法,其特征在于,根据所述私有配置参数在所述目标运行域中生成所述目标功能扩展对应的运行环境,包括:
5.根据权利要求4所述的方法,其特征在于,将所述按照所述目标运行域对应的授权服务接口注入所述独立上下文环境,包括:
6.根据权利要求1所述的方法,其特征在于,在所述运行环境中根据所述功能扩展声明创建所述目标功能扩展对应的待注册功能,包括:
7.根据权利要求1所述的方法,其特征在于,对所述待注册功能进行冲突校验,包括:
8.根据权利要求7所述的方法,其特征在于,根据所述待注册功能确定所述目标功能扩展对应的目标注册功能,包括:
9.根据权利要求6所述的方法,其特征在于,删除所述待注册功能并停止加载所述目标功能扩展,包括:
10.根据权利要求1所述的方法,其特征在于,确定所述目标功能扩展加载完成之后,所述方法还包括:
11.根据权利要求1所述的方法,其特征在于,所述方法还包括:
12.一种功能扩展加载装置,其特征在于,包括:
13.一种计算设备,其特征在于,包括:
14.一种计算机可读存储介质,其特征在于,其存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现权利要求1至11任意一项所述方法的步骤。
15.一种计算机程序产品,其特征在于,包括计算机程序或指令,该计算机程序或指令被处理器执行时实现权利要求1至11任意一项所述方法的步骤。