The cyclefree methodology: a simple approach to building reliable, robust, real-time systems

  • Authors:
  • Dick Mays;Richard J. LeBlanc, Jr.

  • Affiliations:
  • Simtrol, Norcross, GA;Georgia Institute of Technology, Atlanta, Georgia

  • Venue:
  • Proceedings of the 24th International Conference on Software Engineering
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper introduces a new programming methodology for building real-time systems that allows the construction of concurrent programs without the explicit creation and synchronization of threads. The approach requires the program to have an acyclic invocation structure. This restriction allows an underlying CycleFree Kernel to implicitly schedule units of concurrency and synchronize access to objects. Deadlock is avoided by the hierarchical access to objects, and programmers are freed from the traditional worries of explicit task creation and synchronization.The paper discusses real world, commercial experiences, both with explicit multi-threaded applications and with CycleFree applications. The potential pitfalls associated with programming concurrent processes are well known to those skilled in the art. The issues of race conditions, reentrancy, and cyclic deadlock can lead to transient program failure. The CycleFree methodology eliminates these sources of transient program failure, leading to more reliable and robust software. Simtrol, an A/V control systems company, used the CycleFree technology in the construction of two real-time control systems called ONGOER and Omega. Programmers with little previous real-time programming experience can easily embrace this methodology. CycleFree™ technology is protected under U.S. patent number: 6,035,321.