Reference objects for RTSJ memory areas

Andrew Borg, Andy J. Wellings

Research output: Contribution to journalArticlepeer-review

Abstract

The RTSJ introduces a memory model that includes immortal and scoped memory areas that are not subject to garbage collection. Associated with scoped memory areas are rules that restrict reference assignments to guarantee dangling pointers can not occur. Java includes special references which have different semantics than regular references. Encapsulated by reference objects, these references are treated uniquely way by the garbage collector. In particular, they do not stop their referents from being marked for finalization, finalized and reclaimed. This paper makes four contributions. We first propose semantics for reference objects used in the RTSJ. We then propose a new scoped reference object that allows access to objects where this would be disallowed by the RTSJ scoping rules. Next, we show how reference object reachability changes can be processed using RTSJ asynchronous events. Finally, we show how thread groups, unavailable to RTSJ RealtimeThreads can be implemented safely using scoped reference objects.

Original languageEnglish
Pages (from-to)397-410
Number of pages14
JournalLecture Notes in Computer Science
Volume2889
Publication statusPublished - 1 Dec 2003

Cite this