LUNA: Hard Real-Time, Multi-Threaded, CSP-Capable Execution Framework

M.M. Bezemer, R.J.W. Wilterdink

    Research output: Chapter in Book/Report/Conference proceedingConference contributionAcademicpeer-review

    5 Citations (Scopus)
    221 Downloads (Pure)

    Abstract

    Modern embedded systems have multiple cores available. The CTC++ library is not able to make use of these cores, so a new framework is required to control the robotic setups in our lab. This paper first looks into the available frameworks and compares them to the requirements for controlling the setups. It concludes that none of the available frameworks meet the requirements, so a new framework is developed, called LUNA. The LUNA architecture is component based, resulting in a modular structure. The core components take care of the platform related issues. For each supported platform, these components have a different implementation, effectively providing a platform abstraction layer. High-level components take care of platform-independent tasks, using the core components. Execution engine components implement the algorithms taking care of the execution flow, like a CSP implementation. The paper describes some interesting architectural challenges encountered during the LUNA development and their solutions. It concludes with a comparison between LUNA, C++CSP2 and CTC++. LUNA is shown to be more efficient than CTC++ and C++CSP2 with respect to switching between threads. Also, running a benchmark using CSP constructs, shows that LUNA is more efficient compared to the other two. Furthermore, LUNA is also capable of controlling actual robotic setups with good timing properties.
    Original languageUndefined
    Title of host publicationCommunicating Process Architectures 2011
    EditorsPeter H. Welch, Adam T. Sampson, Jan B. Pedersen, Jon M. Kerridge, Johannes F. Broenink, Frederick R.M. Barnes
    Place of PublicationAmsterdam
    PublisherIOS Press
    Pages157-175
    Number of pages19
    ISBN (Print)978-1-60750-773-4
    DOIs
    Publication statusPublished - Jun 2011
    EventCommunicating Process Architectures, CPA 2011: 33th WoTUG Conference on Concurrent and Parallel Programming - Limerick, Ireland
    Duration: 19 Jun 201122 Jun 2011
    Conference number: 34

    Publication series

    NameConcurrent System Engineering Series
    PublisherIOS Press BV
    NumberWoTUG-33
    Volume68
    ISSN (Print)1383-7575

    Conference

    ConferenceCommunicating Process Architectures, CPA 2011
    CountryIreland
    CityLimerick
    Period19/06/1122/06/11

    Keywords

    • METIS-284898
    • CSP
    • IR-79356
    • performance comparison
    • threading
    • Scheduling
    • EWI-20340
    • rendez-vous communication
    • hard real-time
    • framework architecture

    Cite this

    Bezemer, M. M., & Wilterdink, R. J. W. (2011). LUNA: Hard Real-Time, Multi-Threaded, CSP-Capable Execution Framework. In P. H. Welch, A. T. Sampson, J. B. Pedersen, J. M. Kerridge, J. F. Broenink, & F. R. M. Barnes (Eds.), Communicating Process Architectures 2011 (pp. 157-175). (Concurrent System Engineering Series; Vol. 68, No. WoTUG-33). Amsterdam: IOS Press. https://doi.org/10.3233/978-1-60750-774-1-157