...
首页> 外文期刊>Microprocessors and microsystems >Memory management of safety-critical hard real-time systems designed in SystemJ
【24h】

Memory management of safety-critical hard real-time systems designed in SystemJ

机译:SystemJ中设计的对安全至关重要的硬实时系统的内存管理

获取原文
获取原文并翻译 | 示例
           

摘要

SystemJ is a programming language based on the Globally Asynchronous Locally Synchronous (GALS) Model of Computation (MoC) used to design safety critical hard real-time systems. SystemJ uses the Java programming language as the "host" language, for carrying out data computations, because Java provides clearly defined operational semantics, type and memory safety in the form of the Garbage Collector (GC), which help with formal functional verification. The same GC, which helps in functional verification, makes Worst Case Reaction Time (WCRT)(1) analysis challenging. Any WCRT analysis framework for GALS programs needs to consider the operations performed by the host language. It has been shown that the worst case time estimates for garbage collection cycles are in seconds, whereas the program's WCRT itself is in micro-seconds. These pessimistic estimates render the WCRT analysis framework ineffective. In order to overcome this problem, we develop a compiler assisted memory management technique for applications written in SystemJ. The SystemJ MoC plays the central role in the proposed technique. The SystemJ MoC allows clearly demarcating the state boundaries of the program, which in turn allows us to partition the heap, at compile time, into two distinct areas: (1) the memory area called the permanent heap, which holds objects that are alive throughout the life time of the application, and (2) the memory area used to hold all other objects, called the transient heap. The size of these memory areas are bounded statically. Furthermore, the memory allocation and reclaim procedures are simple load and pointer reset operations, respectively, which are guaranteed to complete within a bounded number of clock-cycles, thereby alleviating the need for large pessimistic WCRT bounds obtained due to the GC. Experimental results also show that the proposed approach is approximately three times faster, in terms of memory allocation times as compared to standard real-time GC approaches. (C) 2018 Elsevier B.V. All rights reserved.
机译:SystemJ是一种基于全球异步本地同步(GALS)计算模型(MoC)的编程语言,用于设计安全关键的硬实时系统。 SystemJ使用Java编程语言作为“主机”语言来执行数据计算,因为Java以垃圾收集器(GC)的形式提供了明确定义的操作语义,类型和内存安全性,有助于形式功能验证。同一GC可帮助进行功能验证,因此最坏情况反应时间(WCRT)(1)分析具有挑战性。用于GALS程序的任何WCRT分析框架都需要考虑宿主语言执行的操作。已经显示,最坏情况下垃圾回收周期的时间估计以秒为单位,而程序的WCRT本身以微秒为单位。这些悲观的估计使WCRT分析框架无效。为了克服这个问题,我们为SystemJ编写的应用程序开发了一种编译器辅助的内存管理技术。 SystemJ MoC在提出的技术中起着核心作用。 SystemJ MoC允许清楚地划分程序的状态边界,这又使我们可以在编译时将堆划分为两个不同的区域:(1)称为永久堆的内存区域,该区域用于存储整个过程中仍然存在的对象应用程序的生命周期,以及(2)用于保存所有其他对象的内存区域,称为瞬时堆。这些存储区的大小是静态限制的。此外,内存分配和回收过程分别是简单的加载和指针重置操作,可以保证在一定数量的时钟周期内完成存储操作,从而减轻了由于GC获得的大悲观WCRT限制的需要。实验结果还表明,与标准实时GC方法相比,就内存分配时间而言,该方法快了大约三倍。 (C)2018 Elsevier B.V.保留所有权利。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号