Skip to main content
Log in

Temporal isolation in real-time systems: the VBS approach

  • Eurosys
  • Published:
International Journal on Software Tools for Technology Transfer Aims and scope Submit manuscript

Abstract

Temporal isolation in real-time systems allows the execution of software processes isolated from one another in the temporal domain. Intuitively, the execution of a process is temporally isolated if the real-time behavior of the process is independent of the execution of the other concurrently scheduled processes in the system. The article provides a comprehensive discussion of temporal isolation through variable-bandwidth servers (VBSs). VBS consists of an EDF-based uniprocessor scheduling algorithm and a utilization-based schedulability test. The scheduling algorithm runs in constant time modulo the time complexity of queue management. The schedulability test runs in time linear in the number of processes and enables admission of an individual process in constant time. The test is a sufficient condition for VBS to provide temporal isolation through lower and upper response-time bounds on processes. We present the VBS design, implementation, proofs, and experiments, followed by condensed versions of results on scheduler overhead accounting with VBS and on reducing power consumption in VBS systems.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Craciunas, S.S., Kirsch, C.M., Payer, H., Röck, H., Sokolova, A.: Programmable temporal isolation through variable-bandwidth servers. In: Proceedings of SIES. IEEE, New York (2009)

  2. Liu C.L., Layland J.W.: Scheduling algorithms for multiprogramming in a hard real-time environment. J. ACM 20(1), 46–61 (1973)

    Article  MathSciNet  MATH  Google Scholar 

  3. Abeni L., Buttazzo G.: Resource reservation in dynamic real-time systems. Real-Time Syst. 27(2), 123–167 (2004)

    Article  MATH  Google Scholar 

  4. Cervin, A.: Improved scheduling of control tasks. In: Proceedings of ECRTS. IEEE, New York (1999)

  5. Craciunas, S.S., Kirsch, C.M., Röck, H., Sokolova, A.: Real-time scheduling for workload-oriented programming. Department of Computer Sciences, University of Salzburg, Technical Report 2008-02, September (2008)

  6. Craciunas, S.S., Kirsch, C.M., Sokolova, A.: Response time versus utilization in scheduler overhead accounting. In: Proceedings of RTAS. IEEE, New York (2010)

  7. Craciunas, S.S., Kirsch, C.M., Sokolova, A.: Power-aware temporal isolation with variable-bandwidth servers. In: Proceedings of EMSOFT. ACM, New York (2010)

  8. Shin, I., Lee, I.: Periodic resource model for compositional real-time guarantees. In: Proceedings of RTSS. IEEE, New York (2003)

  9. Shin, I., Lee, I.: Compositional real-time scheduling framework. In: Proceedings of RTSS. IEEE, New York (2004)

  10. Harbour M.G., Klein M.H., Lehoczky J.P.: Timing analysis for fixed-priority scheduling of hard real-time systems. IEEE Trans. Softw. Eng. 20(1), 13–28 (1994)

    Article  Google Scholar 

  11. Sprunt B., Sha L., Lehoczky J.P.: Aperiodic task scheduling for hard-real-time systems. Real-Time Syst. 1, 27–60 (1989)

    Article  Google Scholar 

  12. Strosnider J.K., Lehoczky J.P., Sha L.: The deferrable server algorithm for enhanced aperiodic responsiveness in hard real-time environments. IEEE Trans. Comput. 44, 73–91 (1995)

    Article  MATH  Google Scholar 

  13. Buttazzo G.: Hard Real-Time Computing Systems: Predictable Scheduling Algorithms and Applications. Kluwer, Norwell (1997)

    MATH  Google Scholar 

  14. Craciunas, S.S., Kirsch, C.M., Payer, H., Röck, H., Sokolova, A., Stadler, H., Staudinger, R.: The Tiptoe system (2007). http://tiptoe.cs.uni-salzburg.at

  15. Buttazzo, G., Gai, P.: Efficient implementation of an EDF scheduler for small embedded systems. In: Proceedings of OSPERT (2006)

  16. Bayer R., McCreight E.M.: Organization and maintenance of large ordered indices. Acta Informatica 1, 173–189 (1972)

    Article  Google Scholar 

  17. Bacon, D.F., Cheng, P., Grove, D.: Tuningfork: a platform for visualization and analysis of complex real-time systems. In: Proceedings of Companion on OOPSLA. ACM, New York (2007)

  18. Burd, T.D., Brodersen, R.W.: Energy efficient CMOS microprocessor design. In: Proceedings of HICSS. IEEE, New York (1995)

  19. Pillai, P., Shin, K.G.: Real-time dynamic voltage scaling for low-power embedded operating systems. In: Proceedings of SOSP. ACM, New York (2001)

  20. Aydin, H., Mejía-Alvarez, P., Mossé, D., Melhem, R.: Dynamic and aggressive scheduling techniques for power-aware real-time systems. In: Proceedings of RTSS. IEEE, New York (2001)

  21. Qadi, A., Goddard, S., Farritor, S.: A dynamic voltage scaling algorithm for sporadic tasks. In: Proceedings of RTSS. IEEE, New York (2003)

  22. Shin, D., Kim, J.: Dynamic voltage scaling of periodic and aperiodic tasks in priority-driven systems. In: Proceedings of ASP-DAC. IEEE Press, New York (2004)

  23. Lawitzky, M.P., Snowdon, D.C., Petters, S.M.: Integrating real time and power management in a real system. In: Proceedings of OSPERT (2008)

  24. Scordino, C., Lipari, G.: Using resource reservation techniques for power-aware scheduling. In: Proceedings of EMSOFT. ACM, New York (2004)

  25. Nagle J.: On packet switches with infinite storage. IEEE Trans. Commun. 35(4), 435–438 (1987)

    Article  Google Scholar 

  26. Demers A., Keshav S., Shenker S.: Analysis and simulation of a fair queueing algorithm. SIGCOMM Comput. Commun. Rev. 19, 1–12 (1989)

    Article  Google Scholar 

  27. Parekh A.K., Gallager R.G.: A generalized processor sharing approach to flow control in integrated services networks: the single-node case. IEEE/ACM Trans. Netw. 1, 344–357 (1993)

    Article  Google Scholar 

  28. Jeffay, K., Smith, F.D., Moorthy, A., Anderson, J.: Proportional share scheduling of operating system services for real-time applications. In: Proceedings of RTSS. IEEE Computer Society, New York (1998)

  29. Stoica, I., Abdel-Wahab, H., Jeffay, K., Baruah, S.K., Gehrke, J.E., Plaxton, C.G.: A proportional share resource allocation algorithm for real-ti time-shared systems. In: Proceedings of RTSS. IEEE Computer Society, New York (1996)

  30. Mercer, C.W., Savage, S., Tokuda, H.: Processor capacity reserves for multimedia operating systems. Carnegie Mellon University, Technical Report (1993)

  31. Mercer, C.W., Savage, S., Tokuda, H.: Processor capacity reserves: Operating system support for multimedia applications. In: Proceedings of ICMCS (1994)

  32. Bruno, J., Gabber, E., Özden, B., Silberschatz, A.: Move-to-rear list scheduling: a new scheduling algorithm for providing QoS guarantees. In Proceedings of MULTIMEDIA. ACM, New York (1997)

  33. Jones, M., Leach, P., Draves, R., Barrera, J.: Modular real-time resource management in the Rialto operating system. In: Proceedings of HOTOS. IEEE, New York (1995)

  34. Jones, M.B., Roşu, D., Roşu, C.: CPU reservations and time constraints: efficient, predictable scheduling of independent activities. In: Proceedings of SOSP. ACM, New York (1997)

  35. Nieh, J., Lam, M.S.: The design, implementation and evaluation of SMART: a scheduler for multimedia applications. In: Proceedings of SOSP. ACM, New York (1997)

  36. Lehoczky, J.P., Sha, L., Strosnider, J.K.: Enhanced aperiodic responsiveness in hard real-time environments. In: Proceedings of RTSS. IEEE, New York (1987)

  37. Deng, Z., Liu, J.W.-S., Sun, S.: Dynamic scheduling of hard real-time applications in open system environment. University of Illinois at Urbana-Champaign, Technical Report (1996)

  38. Spuri M., Buttazzo G.C.: Scheduling aperiodic tasks in dynamic priority systems. J. Real-Time Syst. 10(2), 179–210 (1996)

    Article  Google Scholar 

  39. Deng Z., Liu J.W.-S., Zhang L., Mouna S., Frei A.: An open environment for real-time applications. Real-Time Syst. 16(2–3), 155–185 (1999)

    Article  Google Scholar 

  40. Cervin, A., Eker, J.: The Control Server: a computational model for real-time control tasks. In: Proceedings of ECRTS. IEEE, New York (2003)

  41. Brandt, S.A., Banachowski, S., Lin, C., Bisson, T.: Dynamic integrated scheduling of hard real-time, soft real-time and non-real-time processes. In: Proceedings of RTSS. IEEE, New York (2003)

  42. Goddard, S., Liu, X.: Scheduling aperiodic requests under the rate-based execution model. In: Proceedings of RTSS. IEEE, New York (2002)

  43. Buttazzo G., Abeni L.: Adaptive workload management through elastic scheduling. Real-Time Syst. 23(1–2), 7–24 (2002)

    Article  MATH  Google Scholar 

  44. Buttazzo, G.C., Lipari, G., Abeni, L.: Elastic task model for adaptive rate control. In: Proceedings of RTSS. IEEE, New York (1998)

  45. Simoes, M.A.C., Lima, G., Camponogara, E.: A GA-based approach to dynamic reconfiguration of real-time systems. In: Proceedings of APRES (2008)

  46. Beccari, G., Reggiani, M., Zanichelli, F.: Rate modulation of soft real-time tasks in autonomous robot control systems. In: Proceedings of ECRTS (1999)

  47. Stoimenov, N., Thiele, L., Santinelli, L., Buttazzo, G.: Resource adaptations with servers for hard real-time systems. In: Proceedings of EMSOFT. ACM, New York (2010)

  48. Barham, P., Dragovic, B., Fraser, K., Hand, S., Harris, T., Ho, A., Neugebauer, R., Pratt, I., Warfield, A.: Xen and the art of virtualization. In: Proceedings of SOSP. ACM, New York (2003)

  49. Cherkasova L., Gupta D., Vahdat A.: Comparison of the three CPU schedulers in Xen. SIGMETRICS Perform. Eval. Rev. 35(2), 42–51 (2007)

    Article  Google Scholar 

  50. Duda K.J., Cheriton D.R.: Borrowed-virtual-time (BVT) scheduling: supporting latency-sensitive threads in a general-purpose scheduler. SIGOPS Oper. Syst. Rev. 33(5), 261–276 (1999)

    Article  Google Scholar 

  51. Leslie I.M., Mcauley D., Black R., Roscoe T., Barham P.T., Evers D., Fairbairns R., Hyden E.: The design and implementation of an operating system to support distributed multimedia applications. IEEE JSAC 14(7), 1280–1297 (1996)

    Google Scholar 

  52. Govindan, S., Nath, A.R., Das, A., Urgaonkar, B., Sivasubramaniam, A.: Xen and co.: Communication-aware cpu scheduling for consolidated Xen-based hosting platforms. In: Proceedings of VEE. ACM, New York (2007)

  53. Kim, D., Lee, Y.-H., Younis, M.: SPIRIT-μKernel for strongly partitioned real-time systems. In: Proceedings of RTCSA. IEEE, New York (2000)

  54. Kim D., Lee Y.-H.: Periodic and aperiodic task scheduling in strongly partitioned integrated real-time systems. Comput. J. 45(4), 395–409 (2002)

    Article  MATH  Google Scholar 

  55. Lipari G., Bini E.: A methodology for designing hierarchical scheduling systems. J. Embedded Comput. 1(2), 257–269 (2005)

    Google Scholar 

  56. Real J., Crespo A.: Mode change protocols for real-time systems: a survey and a new proposal. Real-Time Syst. 26, 161–197 (2004)

    Article  MATH  Google Scholar 

  57. Short, M.: Improved task management techniques for enforcing EDF scheduling on recurring tasks. In: Proceedings of RTAS. IEEE, New York (2010)

  58. Stein C., Cormen T., Rivest R., Leiserson C.: Introduction To Algorithms. MIT Press, Cambridge (2001)

    MATH  Google Scholar 

  59. Craciunas, S.S., Kirsch, C.M., Sokolova, A.: The power of isolation. Department of Computer Sciences, University of Salzburg, Technical Report 2011-02 July (2011)

  60. Liu, X., Shenoy, P., Corner, M.: Chameleon: application level power management with performance isolation. In: Proceedings of MULTIMEDIA. ACM, New York (2005)

  61. Cao, Q., Fesehaye, D., Pham, N., Sarwar, Y., Abdelzaher, T.: Virtual battery: an energy reserve abstraction for embedded sensor networks. In: Proceedings of RTSS, pp. 123–133. IEEE Computer Society, New York (2008)

  62. Craciunas, S.S., Haas, A., Kirsch, C.M., Payer, H., Röck, H., Rottmann, A., Sokolova, A., Trummer, R., Love, J., Sengupta, R.: Information-acquisition-as-a-service for cyber-physical cloud computing. In: Proceedings of HotCloud. USENIX, Boston (2010)

  63. Craciunas, S.S., Kirsch, C.M., Payer, H., Sokolova, A., Stadler, H., Staudinger, R.: A compacting real-time memory management system. In: Proceedings of USENIX ATC. USENIX, Boston (2008)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Silviu S. Craciunas.

Additional information

This work has been supported by the EU ArtistDesign Network of Excellence on Embedded Systems Design, the National Research Network RiSE on Rigorous Systems Engineering (Austrian Science Fund S11404-N23), and an Elise Richter Fellowship (Austrian Science Fund V00125). We thank the anonymous reviewers for their comments and suggestions.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Craciunas, S.S., Kirsch, C.M., Payer, H. et al. Temporal isolation in real-time systems: the VBS approach. Int J Softw Tools Technol Transfer 15, 189–209 (2013). https://doi.org/10.1007/s10009-012-0246-x

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10009-012-0246-x

Keywords

Navigation