实时 Java 面向组件开发的探索与实践
1. RTSJ 与 Hulotte 框架的后端处理
在后端处理的最后阶段,RTSJ 领域组件会驱动特定的 Hulotte 扩展。在应用初始化阶段调用的汇编工厂生成过程中,会在多处注入 RTSJ 特定代码,例如用于启动周期性组件的执行,或者实例化用于组件实例化的 RTSJ 内存区域。
2. Hulotte 框架优化
Hulotte 工作流的最后一步在后端执行,输入是功能组件和中间件组件组装在一起的完整系统架构。默认情况下,它会生成一个基础设施,组件之间的依赖注入由后端生成的专用组件工厂处理。这种机制依赖于插入在组件接口上的代理对象,是提供反射和可重构的基于组件的系统所需的基本特性。然而,这可能会影响已部署可执行文件的内存占用和执行时间性能。为了减轻这些开销,在后端实现了优化启发式算法,具体如下:
- 减少组件间通信拦截和合并架构工件实现 :合并算法将拦截器、控制器和应用组件实现内联到一个 Java 类中,可应用于嵌套在同一 RTSJ 内存区域的一组功能组件。
- 跨范围拦截器生成优化 :在某些情况下,实现分配内存区域更改的拦截器组件并非必需,可以用简单的方法调用代替。开发者可以使用专用注解 @Direct 指示框架不对相关绑定生成拦截器。
3. 案例研究 - 碰撞检测器(CDx)
为了评估该方法,在 Hulotte 框架中实现了碰撞检测器(CDx)案例研究。CDx 基准测试套件是一个开源的基准测试家族,允许用户针对不同的硬实时和软实时平台,同时展现相同的算法行为。 </
超级会员免费看
订阅专栏 解锁全文
3万+

被折叠的 条评论
为什么被折叠?



