Temporal isolation in real-time systems: the VBS approach

  • Silviu S. Craciunas
  • Christoph M. Kirsch
  • Hannes Payer
  • Harald Röck
  • Ana Sokolova
Eurosys

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.

Keywords

Real-time Scheduling Resource reservation Power-aware scheduling Compositionality 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 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)Google Scholar
  2. 2.
    Liu C.L., Layland J.W.: Scheduling algorithms for multiprogramming in a hard real-time environment. J. ACM 20(1), 46–61 (1973)MathSciNetMATHCrossRefGoogle Scholar
  3. 3.
    Abeni L., Buttazzo G.: Resource reservation in dynamic real-time systems. Real-Time Syst. 27(2), 123–167 (2004)MATHCrossRefGoogle Scholar
  4. 4.
    Cervin, A.: Improved scheduling of control tasks. In: Proceedings of ECRTS. IEEE, New York (1999)Google Scholar
  5. 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)Google Scholar
  6. 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)Google Scholar
  7. 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)Google Scholar
  8. 8.
    Shin, I., Lee, I.: Periodic resource model for compositional real-time guarantees. In: Proceedings of RTSS. IEEE, New York (2003)Google Scholar
  9. 9.
    Shin, I., Lee, I.: Compositional real-time scheduling framework. In: Proceedings of RTSS. IEEE, New York (2004)Google Scholar
  10. 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)CrossRefGoogle Scholar
  11. 11.
    Sprunt B., Sha L., Lehoczky J.P.: Aperiodic task scheduling for hard-real-time systems. Real-Time Syst. 1, 27–60 (1989)CrossRefGoogle Scholar
  12. 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)MATHCrossRefGoogle Scholar
  13. 13.
    Buttazzo G.: Hard Real-Time Computing Systems: Predictable Scheduling Algorithms and Applications. Kluwer, Norwell (1997)MATHGoogle Scholar
  14. 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. 15.
    Buttazzo, G., Gai, P.: Efficient implementation of an EDF scheduler for small embedded systems. In: Proceedings of OSPERT (2006)Google Scholar
  16. 16.
    Bayer R., McCreight E.M.: Organization and maintenance of large ordered indices. Acta Informatica 1, 173–189 (1972)CrossRefGoogle Scholar
  17. 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)Google Scholar
  18. 18.
    Burd, T.D., Brodersen, R.W.: Energy efficient CMOS microprocessor design. In: Proceedings of HICSS. IEEE, New York (1995)Google Scholar
  19. 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)Google Scholar
  20. 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)Google Scholar
  21. 21.
    Qadi, A., Goddard, S., Farritor, S.: A dynamic voltage scaling algorithm for sporadic tasks. In: Proceedings of RTSS. IEEE, New York (2003)Google Scholar
  22. 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)Google Scholar
  23. 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)Google Scholar
  24. 24.
    Scordino, C., Lipari, G.: Using resource reservation techniques for power-aware scheduling. In: Proceedings of EMSOFT. ACM, New York (2004)Google Scholar
  25. 25.
    Nagle J.: On packet switches with infinite storage. IEEE Trans. Commun. 35(4), 435–438 (1987)CrossRefGoogle Scholar
  26. 26.
    Demers A., Keshav S., Shenker S.: Analysis and simulation of a fair queueing algorithm. SIGCOMM Comput. Commun. Rev. 19, 1–12 (1989)CrossRefGoogle Scholar
  27. 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)CrossRefGoogle Scholar
  28. 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)Google Scholar
  29. 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)Google Scholar
  30. 30.
    Mercer, C.W., Savage, S., Tokuda, H.: Processor capacity reserves for multimedia operating systems. Carnegie Mellon University, Technical Report (1993)Google Scholar
  31. 31.
    Mercer, C.W., Savage, S., Tokuda, H.: Processor capacity reserves: Operating system support for multimedia applications. In: Proceedings of ICMCS (1994)Google Scholar
  32. 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)Google Scholar
  33. 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)Google Scholar
  34. 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)Google Scholar
  35. 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)Google Scholar
  36. 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)Google Scholar
  37. 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)Google Scholar
  38. 38.
    Spuri M., Buttazzo G.C.: Scheduling aperiodic tasks in dynamic priority systems. J. Real-Time Syst. 10(2), 179–210 (1996)CrossRefGoogle Scholar
  39. 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)CrossRefGoogle Scholar
  40. 40.
    Cervin, A., Eker, J.: The Control Server: a computational model for real-time control tasks. In: Proceedings of ECRTS. IEEE, New York (2003)Google Scholar
  41. 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)Google Scholar
  42. 42.
    Goddard, S., Liu, X.: Scheduling aperiodic requests under the rate-based execution model. In: Proceedings of RTSS. IEEE, New York (2002)Google Scholar
  43. 43.
    Buttazzo G., Abeni L.: Adaptive workload management through elastic scheduling. Real-Time Syst. 23(1–2), 7–24 (2002)MATHCrossRefGoogle Scholar
  44. 44.
    Buttazzo, G.C., Lipari, G., Abeni, L.: Elastic task model for adaptive rate control. In: Proceedings of RTSS. IEEE, New York (1998)Google Scholar
  45. 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)Google Scholar
  46. 46.
    Beccari, G., Reggiani, M., Zanichelli, F.: Rate modulation of soft real-time tasks in autonomous robot control systems. In: Proceedings of ECRTS (1999)Google Scholar
  47. 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)Google Scholar
  48. 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)Google Scholar
  49. 49.
    Cherkasova L., Gupta D., Vahdat A.: Comparison of the three CPU schedulers in Xen. SIGMETRICS Perform. Eval. Rev. 35(2), 42–51 (2007)CrossRefGoogle Scholar
  50. 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)CrossRefGoogle Scholar
  51. 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. 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)Google Scholar
  53. 53.
    Kim, D., Lee, Y.-H., Younis, M.: SPIRIT-μKernel for strongly partitioned real-time systems. In: Proceedings of RTCSA. IEEE, New York (2000)Google Scholar
  54. 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)MATHCrossRefGoogle Scholar
  55. 55.
    Lipari G., Bini E.: A methodology for designing hierarchical scheduling systems. J. Embedded Comput. 1(2), 257–269 (2005)Google Scholar
  56. 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)MATHCrossRefGoogle Scholar
  57. 57.
    Short, M.: Improved task management techniques for enforcing EDF scheduling on recurring tasks. In: Proceedings of RTAS. IEEE, New York (2010)Google Scholar
  58. 58.
    Stein C., Cormen T., Rivest R., Leiserson C.: Introduction To Algorithms. MIT Press, Cambridge (2001)MATHGoogle Scholar
  59. 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)Google Scholar
  60. 60.
    Liu, X., Shenoy, P., Corner, M.: Chameleon: application level power management with performance isolation. In: Proceedings of MULTIMEDIA. ACM, New York (2005)Google Scholar
  61. 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)Google Scholar
  62. 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)Google Scholar
  63. 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)Google Scholar

Copyright information

© Springer-Verlag 2012

Authors and Affiliations

  • Silviu S. Craciunas
    • 1
  • Christoph M. Kirsch
    • 1
  • Hannes Payer
    • 1
  • Harald Röck
    • 1
  • Ana Sokolova
    • 1
  1. 1.University of SalzburgSalzburgAustria

Personalised recommendations