• Home
  • Search
  • Multiprocessors and Asynchronous Event Handling in the Real-Time Specification for Java
  • Cite Icon1
  • https://doi.org/10.1093/comjnl/bxr030Copy DOI Icon

Multiprocessors and Asynchronous Event Handling in the Real-Time Specification for Java

Show More
  • Abstract
  • Literature Map
  • Citations
  • Similar Papers
Abstract

The Real-Time Specification for Java (RTSJ) is silent on multiprocessor issues. It attempts not to preclude multiprocessor implementations but provides no direct support. Many areas of the RTSJ leave an implementation considerable freedom on how it provides the defined functionality. One such area is the asynchronous event handling (AEH) model. Events are fired and associated handlers are scheduled for execution in response; handlers have defined scheduling parameters and deadlines. The primary goal of the AEH model is to support a lightweight real-time concurrency model. Hence handlers, in general, do not have dedicated threads. Rather, the implementation is responsible for ensuring that all handlers meet their deadlines. Typically real-time threads are assigned to execute handlers by the implementation. This paper discusses the issues associated with implementing the AEH model on multiprocessor systems. The emphasis here is on achieving a lightweight model. A model is lightweight if it is able to meet the deadlines of all handlers with as few as possible real-time threads. In the RTSJ this is made more complicated because asynchronous event handlers are allowed to suspend themselves (for example, by waiting on a monitor condition). Such handlers are called blocking handlers. Most of an implementation's freedom comes from being able to optimize the support for those handlers that do not block. The paper first examines all possible releasing sequences of non-blocking handlers on multiprocessor systems. Based on this, it proposes an efficient and scalable AEH mapping model for multiprocessor systems, which limits the number of real-time threads even in the worst case while retaining the schedulability of the system. The proposed model is then examined to prove its safety and liveness requirements using a model checking tool, UPPAAL. The verification and simulation results of the model indicate that the safety and liveness requirements are satisfied. Most importantly, this paper derives the proposed model's greatest lower and least upper bounds of real-time threads required to execute a given number of non-blocking handlers. The greatest lower bound is equal to the number of processors, and the least upper bound is equal to the number of processors times that of the priority levels in the system. In the model, the number of real-time threads required to execute a given number of non-blocking handlers is restricted to between these two bounds depending on the releasing sequence of handlers. Even in the worst case, the model requires the least upper bound of real-time threads which is, in most cases, considerably less than the actual number of handlers in the system. This, in turn, enables the proposed model to be efficient and scalable by reducing time and space overheads, compared with a traditional 1:1 AEH mapping model where each handler is mapped to a single thread.

Similar Papers
  • Conference Article
  • Citations7

Refactoring Asynchronous Event Handling in the Real-Time Specification for Java

  • Jul 01, 2009
  • Minseong Kim +1
  • Book Chapter
  • Citations5

RT-OSGi: Integrating the OSGi Framework with the Real-Time Specification for Java

  • Dec 31, 2011
  • Thomas Richardson +1
  • Single Report
  • Citations3

Design of Preliminary Experiments with the Sun Java Real-Time System

  • May 20, 2006
  • T S Cook +4
  • Research Article
  • Citations1

An algorithm for load balancing in multiprocessor systems

  • Aug 01, 1990
  • Information Processing Letters
  • Michael C Loui +1
  • Book Chapter
  • Citations21

Systematic Asynchrony Bug Exploration for Android Apps

  • Jan 01, 2015
  • Burcu Kulahcioglu Ozkan +2
  • Conference Article
  • Citations4

Wait-free consensus in "in-phase" multiprocessor systems

  • Oct 25, 1995
  • M Papatriantafilou +1
  • Research Article
  • Citations1

Composable and Predictable Power Management

  • Nov 06, 2014
  • Data Archiving and Networked Services (DANS)
  • Andrew T Nelson
  • Conference Article

Scheduling periodic time-critical tasks on a multiprocessor system (abstract only)

  • Jan 01, 1985
  • S K Dhall +1
  • Research Article
  • Citations2

How Safe is Safe Enough? The Relation of Environmental Characteristics and Economic Competitiveness in Fusion-Reactor Design

  • Jul 01, 1985
  • Fusion Technology
  • John P Holdren
  • Book Chapter

Chapter 5 - The relative power of primitive synchronization operations

  • Sep 18, 2020
  • The Art of Multiprocessor Programming
  • Maurice Herlihy +3
  • Conference Article
  • Citations24

Kernel-level scheduling for the nano-threads programming model

  • Jul 13, 1998
  • Eleftherios D Polychronopoulos +5
  • Research Article
  • Citations1

Pipes

  • Jan 01, 1993
  • ACM SIGPLAN Notices
  • Eric A Brewer +4
  • Conference Article
  • Citations6

SSRLE: Substitution and Segment-Run Length Encoding for Binary Data in XML

  • Sep 01, 2006
  • Brian Harrington +2
  • Research Article
  • Citations8

Timestamping messages and events in a distributed system using synchronous communication

  • Dec 08, 2006
  • Distributed Computing
  • Vijay K Garg +2
  • Conference Article
  • Citations14

Characterization and analysis of HMMER and SCM-RFE parallel bioinformatics applications

  • Nov 07, 2005
  • U Srinivasan +7
Cactus Communications logo

Copyright 2026 Cactus Communications. All rights reserved.