skip to main content
10.1145/1529282.1529717acmconferencesArticle/Chapter ViewAbstractPublication PagessacConference Proceedingsconference-collections
research-article

Building a customizable embedded operating system with fine-grained joinpoints using the AOX programming environment

Published: 08 March 2009 Publication History

Abstract

Aspect-oriented programming (AOP) has been successful in modularizing crosscutting concerns in complex software systems. In this paper, we present our aspect-oriented approach to building a highly customizable embedded operating system. This is a challenging task since embedded operating systems consist of intertwined concerns often implemented using a mixture of multiple programming languages including an assembly language. Furthermore, they often contain hand-optimized code that makes clear modularization extremely difficult. We provide a two-step approach that addresses these difficulties. First, we devised an aspect-oriented programming environment AOX (Aspect-Oriented eXtension). It supports both modularization and customization of complex software via a set of aspect-oriented mechanisms. AOX extends existing approaches in the sense that it is entirely programming language independent and provides finegrained joinpoints. Second, using AOX, we built a customizable embedded operating system we call the HEART OS. It is highly configurable and very user-friendly. AOX has been implemented and integrated into the Eclipse IDE as a plug-in module. The HEART OS has also been implemented and ported to the XScale and x86 platforms. Our experience with AOX in building the HEART OS was very positive.

References

[1]
Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C., Loingtier, J.-M., and Irwin, J. Aspect-oriented programming In Proceedings of ECOOP, 1997, 220--242.
[2]
Nagy, I., Bergmans, L., and Aksit, M. Composing Aspects at Shared Join Points. In Proceedings of NODe, 2005.
[3]
Griswold, W. G., Shonle, M., Sullivan, K., Song, Y., Tewari, N., Cai, Y., and Rajan, H. Modular Software Design with Crosscutting Interfaces. IEEE Software (2006), 51--60.
[4]
Eaddy, M. and Aho, A. Statement Annotations for Fine-Grained Advising. In Proceedings of RAM-SE, 2006.
[5]
Sakurai, K. and Masuhara, H. Test-based Pointcuts for Robust and Fine-Grained Join Point Specification. In Proceedings of AOSD, 2008.
[6]
Hon, T. and Kiczales, G. Fluid AOP join point models. In Proceedings of OOPSLA, 2006.
[7]
Jarzabek, S. Software Reuse Beyond Components with XVCL. In Proceedings of GTTSE, 2007.
[8]
Chu-Carroll, M. C., Wright, J., and Ying, A. T. T. Visual separation of concerns through multidimensional program storage. In Proceedings of AOSD, 2003, 188--197.
[9]
Robillard, M. P. and Murphy, G. C. Representing Concerns in Source Code. ACM Transactions Software Engineering and Methodology, 16, 1 (2007).
[10]
Usui, Y. and Chiba, S. Bugdel: An Aspect-Oriented Debugging System. In Proceedings of APSEC, 2005.
[11]
Coady, Y. and Kiczales, G. Back to the Future: A Retroactive Study of Aspect Evolution in Operating System Code. In Proceedings of AOSD, 2003, 50--59.
[12]
Lohmann, D., Streicher, J., Spinczyk, O., and Schröder-Preikschat, W. Interrupt synchronization in the CiAO operating system: experiences from implementing low-level system policies by AOP. In Proceedings of Workshop on Aspects, components, and patterns for infrastructure software, 2007.
[13]
Yanagisawa, Y., Kourai, K., Chiba, S., and Ishikawa, R. A dynamic aspect-oriented system for OS kernels. In Proceedings of GPCE, 2006.

Cited By

View all
  • (2018)A distributed multicore real-time operating system family based on aspect-oriented programming2018 IEEE International Conference on Industrial Technology (ICIT)10.1109/ICIT.2018.8352383(1389-1394)Online publication date: Feb-2018
  • (2015)Aspect-Oriented Customization of the Scheduling Algorithms and the Resource Access Protocols of a Real-Time Operating System Family2015 IEEE International Conference on Smart City/SocialCom/SustainCom (SmartCity)10.1109/SmartCity.2015.52(87-94)Online publication date: Dec-2015
  • (2014)A distributed real-time operating system built with aspect-oriented programming for distributed embedded control systems2014 20th IEEE International Conference on Parallel and Distributed Systems (ICPADS)10.1109/PADSW.2014.7097839(436-443)Online publication date: Dec-2014
  • Show More Cited By

Index Terms

  1. Building a customizable embedded operating system with fine-grained joinpoints using the AOX programming environment

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    SAC '09: Proceedings of the 2009 ACM symposium on Applied Computing
    March 2009
    2347 pages
    ISBN:9781605581668
    DOI:10.1145/1529282
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 08 March 2009

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. AOP
    2. fine-granularity
    3. language independence
    4. operating systems

    Qualifiers

    • Research-article

    Conference

    SAC09
    Sponsor:
    SAC09: The 2009 ACM Symposium on Applied Computing
    March 8, 2009 - March 12, 2008
    Hawaii, Honolulu

    Acceptance Rates

    Overall Acceptance Rate 1,650 of 6,669 submissions, 25%

    Upcoming Conference

    SAC '25
    The 40th ACM/SIGAPP Symposium on Applied Computing
    March 31 - April 4, 2025
    Catania , Italy

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)3
    • Downloads (Last 6 weeks)1
    Reflects downloads up to 15 Feb 2025

    Other Metrics

    Citations

    Cited By

    View all
    • (2018)A distributed multicore real-time operating system family based on aspect-oriented programming2018 IEEE International Conference on Industrial Technology (ICIT)10.1109/ICIT.2018.8352383(1389-1394)Online publication date: Feb-2018
    • (2015)Aspect-Oriented Customization of the Scheduling Algorithms and the Resource Access Protocols of a Real-Time Operating System Family2015 IEEE International Conference on Smart City/SocialCom/SustainCom (SmartCity)10.1109/SmartCity.2015.52(87-94)Online publication date: Dec-2015
    • (2014)A distributed real-time operating system built with aspect-oriented programming for distributed embedded control systems2014 20th IEEE International Conference on Parallel and Distributed Systems (ICPADS)10.1109/PADSW.2014.7097839(436-443)Online publication date: Dec-2014
    • (2013)Aspect-Oriented Customization of the Scheduling Algorithm and the Resource Access Protocol of a Real-Time Operating SystemProceedings of the 2013 IEEE 16th International Conference on Computational Science and Engineering10.1109/CSE.2013.98(627-634)Online publication date: 3-Dec-2013

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Figures

    Tables

    Media

    Share

    Share

    Share this Publication link

    Share on social media