Open Systems Laboratory at Illinois

A modular approach to programming distributed real-time systems

By Shangping Ren, Gul Agha, and Masahiko Saito. J. Parallel Distrib. Comput, 36(1):4–12, 1996.

Full Text:
Download PDF
Publisher Link:


Conventional real-time programs associate real-time requirements with individual commands in a program. This approach has three weaknesses. First, it intermixes two different design concerns: functional correctness and temporal correctness. Second, by mixing real-time requirements with program statements it makes it harder, and in some cases infeasible, to specify constraints between objects. Third, it limits the ability to independently modify either the timing constraints or the representations of objects. We describe a new approach that separates real-time constraints from functional aspects of an application; real-time constraints are described by synchronization code between the interfaces of objects. Objects in our system are defined using a real-time variant of the Actor model. We define a high-level programming language construct called RTsynchronizer, which specifies a collection of temporal constraints between actors. Thus, our approach separates what an object does from when it does it. Such separation also facilitates the ability to dynamically modify real-time constraints. We illustrate the use of RTsynchronizers by a number of examples and then describe a meta-architecture that can be used to implement RTsynchronizers.


    author = "Ren, Shangping and Agha, Gul and Saito, Masahiko",
    title = "A Modular Approach to Programming Distributed Real-Time
    ee = "",
    journal = "J. Parallel Distrib. Comput",
    keywords = "sensor networks, real-time systems",
    number = "1",
    pages = "4-12",
    volume = "36",
    year = "1996",