Skip to main content

The Spring System: Integrated Support for Complex Real-Time Systems

  • Chapter
Operating Systems and Services

Abstract

The Spring system is a highly integrated collection of software and hardware that synergistically operates to provide end-to-end support in building complex real-time applications. In this paper, we show how Spring’s specification language, programming language, software generation system, and operating system kernel are applied to build a flexible manufacturing testbed. The same ingredients have also been used to realize a predictable version of a robot pick and place application used in industry. These applications are good examples of complex real-time systems that require flexibility. The goal of this paper is to demonstrate the integrated nature of the system and the benefits of integration; in particular, the use of reflective information and the value of function and time composition. The lessons learned from these applications and the project as a whole are also presented.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 109.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  • Amerasinghe, P. An Interactive Timing Analysis Tool for the SARTOR Environment, Master’s thesis, University of Texas at Austin, 1985.

    Google Scholar 

  • Arnold, R., F. Mueller, D. B. Whalley, and M. Harmon, Bounding Worst-Case Instruction Cache Performance, Proceedings of the 1994 IEEE Real-Time Systems Symposium, December 1994.

    Google Scholar 

  • Bickford, C., M. Teo, G. Wallace, J.A. Stankovic and K. Ramamritham, A Robotic Assembly Application on the Spring Real-Time System, Proceedings of the 1996 IEEE Real-Time Technology and Applications Symposium, May 1996.

    Google Scholar 

  • Burns, A. and A. Wellings, Real-Time Systems and Their Programming Languages. Addison-Wesley, 1989. Chen, M. Timing Analysis Language - TAL Programmer’s Manual, Technical report, University of Texas at Austin, 1985.

    Google Scholar 

  • Di Natale, M. and J.A. Stankovic, Dynamic End-to-End Guarantees in Distributed Real-Time Systems, Proc. of the 15th Real-Time Systems Symposium, December 1994.

    Google Scholar 

  • Furht, B., D. Grostick, D. Gluch, G. Rabbat, J. Parker, and M. McRoberts, Real-Time Unix Systems, Design and Application Guide, Kluwer Academic Publishers, Boston, MA., 1991.

    Google Scholar 

  • B. Gallmeister, POSIX.4: Programming for the Real World, O’Reilly and Associates, 1995.

    Google Scholar 

  • Gehani, N. and K. Ramamritham, Real-Time Concurrent C (C++): A Language for Programming Dynamic Real-time Systems, Real-Time Systems, Vol. 3., No. 4, Dec. 1991, pp 377-405.

    Google Scholar 

  • Gene, E. The Spring Simulation Testbed - V2 User’s Guide, Technical report, Spring Project Documentation, 1990.

    Google Scholar 

  • Gheith, A. and K. Schwan, CHAOS arc: Kernel Support for Multi-Weight Objects, Invocations, and Atomicity in Real-Time Applications, ACM Transactions on Computer Systems, Vol 11., No. 1, April 1993, pp 33-72.

    Google Scholar 

  • Halang, W. and A. Stoyenko, Constructing Predictable Real-Time Systems, Kluwer Academic Publishers, 1991.

    MATH  Google Scholar 

  • Harmon, M., T. Baker and D. Whalley, A Retargetable Technique for Predicting Execution Time, Proceedings of the IEEE Real-Time Systems Symposium, December 1992, pp pages 68-77.

    Google Scholar 

  • Ishikawa, Y., H. Tokuda and C. Mercer, Object Oriented Real-Time Language Design: Constructs for Timing Constraints, Proceedings of OOPSLAJECOOP, ACM, October 1990.

    Google Scholar 

  • Kenney, K. and K. Lin, Building Flexible Real-Time Systems Using the Flex Language, IEEE Computer, Vol. 24., No. 5, May 1991, pp 70-78.

    Google Scholar 

  • Kligerman, E. and A. Stoyenko, Real-Time Euclid: A Language for Reliable Real-Time Systems, IEEE Transactions on Software Engineering, September 1986.

    Google Scholar 

  • Kopetz, H., A. Damm, C. Koza and D. Mulozzani, Distributed Fault Tolerant Real-Time Systems: The Mars Approach, IEEE Micro, 1989, pp 25-40.

    Google Scholar 

  • Kopetz, H. and W. Merker, The Architecture of MARS, Proceedings 15th FTCS, June 1985, pp 274-279.

    Google Scholar 

  • Liu, J., K. Lin, W. Shih, A. Yu, J. Chung and W. Zhao, Algorithms for Scheduling Imprecise Calculations, IEEE Computer, Vol. 24., No. 5, May 1991, pp 58-68.

    Google Scholar 

  • Molesky, L.D., C. Shen and G. Zlokapa, Predictable Synchronization Mechanisms for Multiprocessor Real-Time Systems, Real-Time Systems, Vol. 2., No. 3, 1989, pp 163-180.

    Google Scholar 

  • Motorola, Inc. MCOR Unit68020 32-bit Microprocessor User’s Manual, 1986.

    Google Scholar 

  • Nahum, E. and D. Yates, Real-Time IPC for the Spring Kernel, COINS 777 Project Report, University of Massachusetts, Amherst, MA, May 1990.

    Google Scholar 

  • Niehaus, D. Program Representation and Translation for Predictable Real-Time Systems, Proceedings of the IEEE Real-Time Systems Symposium, December 1991, pp 53-63.

    Google Scholar 

  • Niehaus, D. Program Representation and Execution in Real-Time Multiprocessor Systems, PhD thesis, University of Massachusetts, Amherst MA, 1994.

    Google Scholar 

  • Niehaus, D., L. Molesky and J.A. Stankovic, Spring System Programming and Run-Time Models, Spring Project Documentation, University of Massachusetts, Amherst, MA, June 1990

    Google Scholar 

  • Niehaus, D., K. Ramamritham, J.A. Stankovic, G. Wallace, C. Weems, W. Burleson and J. Ko, The Spring Scheduling Co-Processor: Design, Use, and Performance, Proceedings of the Fourteenth IEEE Real-Time Systems Symposium, December 1993, pp 106-111.

    Google Scholar 

  • Niehaus, D., J.A. Stankovic and K. Ramamritham, A Real-Time System Description Language, Proceedings of the 1995 IEEE Real-Time Technology and Applications Symposium, May 1995.

    Google Scholar 

  • Nirkhe, V., S. Tripathi and A. Agrawala, Language Support for the Maruti Real-Time System, Proceedings of the IEEE Real-Time Systems Symposium, December 1990.

    Google Scholar 

  • Park, C. and A. Shaw, Experiments with a Program Timing Tool Based on Source-Level Timing Schema, IEEE Computer, Vol. 24., No. 5, May 1991, pp 48-57.

    Google Scholar 

  • Pflugel, M., A. Damm and W. Schwabl, Interprocess Communication in MARS, ITG/GI Conference on Communication in Distributed Systems, Stuttgart, Germany, February 1989.

    Google Scholar 

  • Puschner, P. and C. Koza, Calculating the Maximum Execution Time of Real-Time Programs, Real-Time Systems Journal, Vol 1., No. 2, 1990.

    Google Scholar 

  • Ramamritham, K., J.A. Stankovic and P. Shiah, Efficient Scheduling Algorithms for Real-Time Multiprocessor Systems, IEEE Transactions on Parallel and Distributed Systems, Vol 1., No. 2, February 1989, pp. 184-194.

    Google Scholar 

  • Ramamritham, K., J.A. Stankovic, and W. Zhao, Distributed Scheduling of Tasks with Deadlines and Resource Requirements, IEEE Transactions on Computers, Vol 38., No. 8, August 1989, pp 1110-1123.

    Google Scholar 

  • Saksena, M., J. da Silva and A. Agrawala, Design and Implementation of Maruti-II, Advances in Real-Time Systems, Sang Son, editor, Prentice-Hall, 1995.

    Google Scholar 

  • Saltzer, J.H., D.P. Reed and D.D. Clark, End to End Arguments in System Design, ACM Transactions on Computer Systems, Vol 2., No. 2, November 1984.

    Google Scholar 

  • Sha, L. and J. Goodenough, Real-Time Scheduling Theory and ADA, Cmu/sei-88-tr-33, CMU, November 1988.

    Google Scholar 

  • Shen, C., K. Ramamritham and J.A. Stankovic, Resource Reclaiming in Multiprocessor Real-Time Systems, IEEE Transactions on Parallel and Distributed Systems, Vol 4., No. 4, April 1993, pp 382-398.

    Google Scholar 

  • Shin, K. HARTS: A Distributed Real-Time Architecture, IEEE Computer, Vol 24., No. 5, 1991.

    Google Scholar 

  • Shin, K.G., D.D. Kandlur, D.L. Kiskis, P.S. Dodd, H.A. Rosenberg, and A. Indiresan, A Software Overview of HARTS: A Distributed Real-Time System, Advances in Real-Time Systems. Sang Son, editor, Prentice-Hall, 1995.

    Google Scholar 

  • Stallman, R. Using and Porting GNU CC, Technical report, Free Software Foundation, May 1992.

    Google Scholar 

  • Stankovic, J.A., Misconceptions about Real-Time Computing: A Serious Problem for Next Generation Systems, IEEE Computer, October 1988, pp 10-19.

    Google Scholar 

  • Stankovic, J.A., D. Niehaus and K. Ramamritham, SpringNet: An Architecture for High Performance Distributed Real-Time Computing, Workshop on Parallel and Distributed Real-Time Systems, April 1993.

    Google Scholar 

  • Stankovic, J.A. and K. Ramamritham, The Design of the Spring Kernel, Proc. of the 8th Real-Time Systems Symposium, December 1987, pp 146-157.

    Google Scholar 

  • Stankovic, J.A. and K. Ramamritham, The Spring Kernel: A New Paradigm for Real-Time Systems, IEEE Software, Vol 8., No. 3, May 1991, pp 62-72.

    Google Scholar 

  • Stoyenko, A., A Schedulability Analyzer for Real-Time Euclid, IEEE Real-Time Systems Symposium, December 1987.

    Google Scholar 

  • SYSTRAN Corporation, SCRAMNet Network Reference Manual, Dayton, Ohio, 45432, 1991.

    Google Scholar 

  • Tokuda, H., C.W. Mercer, Y. Ishikawa and T. Marchok, Priority Inversions in Real-Time Communication, Proc. of the 10th Real-Time Systems Symposium, May 1989, pp 348-359.

    Google Scholar 

  • Tokuda, H., T. Nakajima and P. Rao, Real-Time MACH: Towards a Predictable Real-Time System, Proceedings of the USENIX MACH Workshop, 1990.

    Google Scholar 

  • White, R.T. F. Mueller, C.A. Healy, D. B. Whalley, and M. G. Harmon, Timing Analysis for Data Caches and Set-Associative Caches, Proceedings of the 1997 IEEE Real-Time Technology and Applications Symposium,June 1997.

    Google Scholar 

  • Zhao, W. and K. Ramamritham, Simple and Integrated Heuristic Algorithms for Scheduling Tasks with Time and Resource Constraints, Journal of Systems and Software, Vol 7., No. 3, September 1987, pp 195-205.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1999 Kluwer Academic Publishers

About this chapter

Cite this chapter

Stankovic, J.A., Ramamritham, K., Niehaus, D., Humphrey, M., wallace, G. (1999). The Spring System: Integrated Support for Complex Real-Time Systems. In: Rajkumar, R. (eds) Operating Systems and Services. Springer, Boston, MA. https://doi.org/10.1007/978-1-4615-5041-9_4

Download citation

  • DOI: https://doi.org/10.1007/978-1-4615-5041-9_4

  • Publisher Name: Springer, Boston, MA

  • Print ISBN: 978-0-7923-8548-6

  • Online ISBN: 978-1-4615-5041-9

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics