skip to main content
10.1145/2928275.2928283acmconferencesArticle/Chapter ViewAbstractPublication PagessystorConference Proceedingsconference-collections
research-article

Proper Timed I/O: High-Accuracy Real-Time Control for Conventional Operating Systems

Authors Info & Claims
Published:06 June 2016Publication History

ABSTRACT

We propose a novel high-level abstraction for real-time control, called Proper Timed I/O (PTIO). The abstraction allows user-space programs running on a stock operating system (without real-time extensions) to perform high-resolution real-time digital I/O (setting pins high or low, responding to input transitions, etc.). PTIO programs express their real-time I/O behavior in terms of a timed automaton that can communicate with the user-space program. Simple behaviors are encoded in the timed automaton; complex behaviors are implemented by the user-space program. We present two implementations of the PTIO abstraction, both for Linux. One utilizes a deterministic co-processor that is available on some ARM-based system-on-a-chip processors. This implementation can achieve timing accuracy of 100ns or better and can perform millions of finite-state transitions per second. The other implementation uses hardware timers that are available on every system-on-a-chip; it achieves a timing accuracy of 6µs or better, but it is limited to about 2000 state transitions per second. Both implementations guarantee that the PTIO never fails silently: if the mechanism missed a deadline, the user space program is always notified. In many cases, PTIOs eliminate the need for bare-metal programming or for specialized real-time operating systems.

References

  1. K. Altisen and S. Tripakis. Implementation of timed automata: An issue of semantics or modeling? In Formal Modeling and Analysis of Timed Systems, pages 273--288. Springer, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. R. Alur and D. L. Dill. A theory of timed automata. Theoretical computer science, 126(2):183--235, 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. T. Amnell, E. Fersman, P. Pettersson, W. Yi, and H. Sun. Code synthesis for timed automata. Nordic Journal of Computing, 9(4):269--300, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. G. V. Bochmann. Finite state description of communication protocols. Computer Networks, 2(4):361--372, 1978.Google ScholarGoogle Scholar
  5. M. Buettner, G. V. Yee, E. Anderson, and R. Han. X-MAC: a short preamble MAC protocol for duty-cycled wireless sensor networks. In Proceedings of the 4th International Conference on Embedded Networked Sensor Systems (SenSys), pages 307--320, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. S. Cass. Tools toys: Hardware for your software radio. IEEE Spectrum, 43(10):51--54, Oct 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. M. De Wulf, L. Doyen, and J.-F. Raskin. Almost ASAP semantics: From timed models to timed implementations. In Hybrid Systems: Computation and Control, pages 296--310. Springer, 2004.Google ScholarGoogle Scholar
  8. J. Degesys, I. Rose, A. Patel, and R. Nagpal. DESYNC: self-organizing desynchronization and TDMA on wireless sensor networks. In Proceedings of the 6th International Conference on Information Processing in Sensor Networks (SenSys), pages 11--20, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. C. Edwards. Not-so-humble raspberry PI gets big ideas. Engineering Technology, 8(3):30--33, April 2013.Google ScholarGoogle ScholarCross RefCross Ref
  10. L. M. Feeney, L. Andersson, A. Lindgren, S. Starborg, and A. Ahlberg Tidblad. A testbed for measuring battery discharge behavior. In Proceedings of the 7th ACM International Workshop on Wireless Network Testbeds, Experimental Evaluation and Characterization, pages 91--92, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. P. Gerum. The xenomai project: Implementing a RTOS emulation framework on GNU/Linux. In Proceedings of the 3rd Real-Time Linux Workshop, 2001.Google ScholarGoogle Scholar
  12. T. Gleixner and D. Niehaus. Hrtimers and beyond: Transforming the Linux time subsystems. In Proceedings of the Linux Symposium, volume 1, pages 333--346, Ottawa, 2006.Google ScholarGoogle Scholar
  13. T. A. Henzinger, X. Nicollin, J. Sifakis, and S. Yovine. Symbolic model checking for real-time systems. Information and computation, 111(2):193--244, 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. D. Hildebrand. An architectural overview of QNX. In Proceeings of the USENIX Workshop on Microkernels and Other Kernel Architectures, pages 113--126, 1992. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. IEEE. IEEE std 1003.1b-1993, 1994. IEEE Standard for Information Technology - Portable Operating System Interfaces (POSIX(R)) - Part 1: System Application Program Interface (API) - Amendment 1: Realtime Extension {C language}.Google ScholarGoogle Scholar
  16. R. Lim, F. Ferrari, M. Zimmerling, C. Walser, P. Sommer, and J. Beutel. Flocklab: A testbed for distributed, synchronized tracing and profiling of wireless embedded systems. In Proceedings of the 12th International Conference on Information Processing in Sensor Networks (SenSys), pages 153--166, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. D. Molloy. Exploring Beaglebone. Wiley, 2014.Google ScholarGoogle Scholar
  18. A. Pnueli, E. Asarin, O. Maler, and J. Sifakis. Controller synthesis for timed automata. In Proceedings of the IFAC Symposium on System Structure and Control, pages 469--474, 1998.Google ScholarGoogle Scholar
  19. M. A. Rivas and M. G. Harbour. MaRTE OS: An Ada kernel for real-time embedded applications. In Proceedings of Reliable Software Technologies---Ada-Europe, pages 305--316. Springer, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. W. River. VxWorks hompage, Accessed Dec 2014. Available online at http://www.windriver.com/products/vxworks/.Google ScholarGoogle Scholar
  21. O. Sankur, P. Bouyer, N. Markey, and P.-A. Reynier. Robust controller synthesis in timed automata. In CONCUR-- Concurrency Theory, pages 546--560. Springer, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. S. Savage and H. Tokuda. Real time-Mach timers: Exporting time to the user. In Proceedings of the USENIX Mach Symposium, pages 111--118, 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. T. Ts'o, D. Hart, and J. Kacur. Real-time Linux wiki, Accessed Dec 2014. Available online at https://rt.wiki.kernel.org/.Google ScholarGoogle Scholar

Index Terms

  1. Proper Timed I/O: High-Accuracy Real-Time Control for Conventional Operating Systems

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in
        • Published in

          cover image ACM Conferences
          SYSTOR '16: Proceedings of the 9th ACM International on Systems and Storage Conference
          June 2016
          191 pages
          ISBN:9781450343817
          DOI:10.1145/2928275

          Copyright © 2016 ACM

          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]

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 6 June 2016

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article
          • Research
          • Refereed limited

          Acceptance Rates

          SYSTOR '16 Paper Acceptance Rate16of49submissions,33%Overall Acceptance Rate94of285submissions,33%

          Upcoming Conference

          SYSTOR '24
          The 17th ACM International Systems and Storage Conference
          September 23 - 25, 2024
          Tel-Aviv , Israel
        • Article Metrics

          • Downloads (Last 12 months)4
          • Downloads (Last 6 weeks)0

          Other Metrics

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader