Trustworthy Real-Time Systems

  • Stefan M. Petters
  • Kevin Elphinstone
  • Gernot Heiser
Chapter

Abstract

The market of embedded processors far surpasses the market of personal computers and servers. While being more prolific than their desktop counterparts, the progress in semiconductor technology has also brought unprecedented computing power to embedded systems. On the back of these opportunities the complexity of embedded applications is rising dramatically. Two typical examples are today’s smartphones or cars. The amount of software contained in these devices is impressive, as for example 100 million lines of code (LOC) in a modern high end car [7] in 2009, while the Android operating system without applications weighs in at around 12 million LOC in 2010.

Keywords

Embed System Early Deadline First Direct Memory Access Schedulability Test Temporal Isolation 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Notes

Acknowledgements

NICTA is funded by the Australian Government as represented by the Department of Broadband, Communications and the Digital Economy and the Australian Research Council through the ICT Centre of Excellence program. This work was also supported by the Portuguese Fundação para a Ciência e a Tecnologia (CISTER Research Unit – FCT UI 608).

References

  1. 1.
    Abeni L, Buttazzo G (1998) Integrating multimedia applications in hard real-time systems. In: Proceedings of the 19th IEEE real-time systems symposium, IEEE Computer Science Press, Madrid, Spain, pp 4–13Google Scholar
  2. 2.
    Abeni L, Lipari G, Buttazzo G (1999) Constant bandwidth vs. proportional share resource allocation. In: Proceedings of the 5th IEEE international conference on multimedia computing and systems, vol 2. IEEE Computer Science Press, Florence, Italy, pp 107–111Google Scholar
  3. 3.
    Albers K, Slomka F (2004) An event stream driven approximation for the analysis of real-time systems. In: Proceedings of the 16th euromicro conference on real-time systems, IEEE Computer Science Press, Catania, ItalyGoogle Scholar
  4. 4.
    Bernat G, Colin A, Petters SM (2002) WCET analysis of probabilistic hard real–time systems. In: Proceedings of the 24th IEEE real-time systems symposium, Austin, Texas, pp 279–288Google Scholar
  5. 5.
    Bernat G, Newby M, Burns A (2005) Probabilistic timing analysis: An approach using copulas. J Embedded Comput 1(2):179–194Google Scholar
  6. 6.
    Brandt SA, Banachowski S, Lin C, Bisson T (2003) Dynamic integrated scheduling of hard real-time, soft real-time and non-real-time processes. In: Proceedings of the 24th IEEE real-time systems symposium, Cancun, MexicoGoogle Scholar
  7. 7.
    Charette RN (2009) This car runs on code. IEEE Spectrum 46(2), http://www.spectrum.ieee.org/feb09/7649
  8. 8.
    Colin A, Petters SM (2003) Experimental evaluation of code properties for WCET analysis. In: Proceedings of the 24th IEEE international real-time systems symposium, Cancun, MexicoGoogle Scholar
  9. 9.
    Colin A, Puaut I (2001) Worst case execution time analysis of the RTEMS real-time operating system. In: Proceedings of the 13th euromicro conference on real-time systems, Delft, Netherlands, pp 191–198Google Scholar
  10. 10.
    Dennis JB, Van Horn EC (1966) Programming semantics for multiprogrammed computations. Communications ACM 9:143–155MATHCrossRefGoogle Scholar
  11. 11.
    Derrin P, Elphinstone K, Klein G, Cock D, Chakravarty MMT (2006) Running the manual: An approach to high-assurance microkernel development. In: Proceedings of the ACM SIGPLAN haskell workshop, Portland, ORGoogle Scholar
  12. 12.
    Elkaduwe D, Derrin P, Elphinstone K (2008) Kernel design for isolation and assurance of physical memory. In: 1st workshop on isolation and integration in embedded systems, ACM SIGOPS, Glasgow, UK, pp 35–40Google Scholar
  13. 13.
    Elphinstone K, Klein G, Derrin P, Roscoe T, Heiser G (2007) Towards a practical, verified kernel. In: Proceedings of the 11th workshop on hot topics in operating systems, San Diego, CA, pp 117–122Google Scholar
  14. 14.
    Heiser G (2009) Hypervisors for consumer electronics. In: Proceedings of the 6th IEEE consumer communications and networking conference, Las Vegas, NV, pp 1–5Google Scholar
  15. 15.
    Herder JN, Bos H, Gras B, Homburg P, Tanenbaum AS (2006) MINIX 3: A highly reliable, self-repairing operating system. ACM Operating Syst Rev 40(3):80–89CrossRefGoogle Scholar
  16. 16.
    Klein G (2009) Operating system verification – an overview. Sādhanā 34(1):27–69MATHGoogle Scholar
  17. 17.
    Klein G, Derrin P, Elphinstone K (2009a) Experience report: seL4 – formally verifying a high-performance microkernel. In: Proceedings of the 14th international conference on functional programming, ACM, Edinburgh, UK, pp 91–96Google Scholar
  18. 18.
    Klein G, Elphinstone K, Heiser G, Andronick J, Cock D, Derrin P, Elkaduwe D, Engelhardt K, Kolanski R, Norrish M, Sewell T, Tuch H, Winwood S (2009b) seL4: Formal verification of an OS kernel. In: Proceedings of the 22nd ACM symposium on operating systems principles, ACM, Big Sky, MT, pp 207–220Google Scholar
  19. 19.
    Lawitzky MP, Snowdon DC, Petters SM (2008) Integrating real time and power management in a real system. In: Proceedings of the 4th workshop on operating system platforms for embedded real-time applications, Prague, Czech RepublicGoogle Scholar
  20. 20.
    Liedtke J (1995) On \(\mu \)-kernel construction. In: Proceedings of the 15th ACM symposium on operating systems principles, Copper Mountain, CO, pp 237–250Google Scholar
  21. 21.
    Lin C, Brandt SA (2005) Improving soft real-time performance through better slack management. In: Proceedings of the 26th IEEE real-time systems symposium, Miami, FLGoogle Scholar
  22. 22.
    Liu C, Layland J (1973) Scheduling algorithms for multiprogramming in a hard real-time environment. J ACM 20:46–61MathSciNetMATHCrossRefGoogle Scholar
  23. 23.
    Lin C, Kaldewey T, Povzner A, Brandt SA (2006) Diverse soft real-time processing in an integrated system. In: Proceedings of the 27th IEEE real-time systems symposium, IEEE Computer Science Press, Rio de Janeiro, BrazilGoogle Scholar
  24. 24.
    Nipkow T, Paulson L, Wenzel M (2002) Isabelle/HOL – A proof assistant for higher-order logic, Lecture notes in computer science, vol 2283. SpringerGoogle Scholar
  25. 25.
    Petters SM (2007) Execution-time profiles. Technical report, NICTA, Sydney, AustraliaGoogle Scholar
  26. 26.
    Petters SM, Lawitzky M, Heffernan R, Elphinstone K (2009) Towards real multi-criticality scheduling. In: Proceedings of the 15th IEEE conference on embedded and real-time computing and applications, Beijing, China, pp 155–164Google Scholar
  27. 27.
    Poledna S et al (2000) OSEKTime: a dependable real-time, fault-tolerant operating system and communication layer as an enabling technology for by-wire applications. In: SAE 2000 world congress, Detroit, MI, pp 51–70Google Scholar
  28. 28.
    Rushby J (1984) A trusted computing base for embedded systems. In: Proceedings of 7th DoD/NBS computer security conference, pp 294–311Google Scholar
  29. 29.
    Singal M, Petters SM (2007) Issues in analysing L4 for its WCET. In: Proceedings of the 1st international workshop on microkernels for embedded systems, NICTA, Sydney, AustraliaGoogle Scholar
  30. 30.
    Siro A, Emde C, Mc Guire N (2007) Assessment of the realtime preemption patches (rt-preempt) and heir impact on the general purpose performance of the system. In: Proceedings of 9th real-time Linux workshop, Linz, AustriaGoogle Scholar
  31. 31.
    Stanovich M, Baker TP, Wang AI, Harbour MG (2010) Diverse soft real-time processing in an integrated system. In: Proceedings of the 16th IEEE real-time and embedded technology and applications symposium, IEEE Computer Science Press, Stockholm, SwedenGoogle Scholar
  32. 32.
    Strosnider JK, Lehoczky JP, Sha L (1995) The deferrable server algorithm for enhanced aperiodic responsiveness in hard real-time environments. IEEE Trans Comp 44(1):179–194CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Stefan M. Petters
    • 1
  • Kevin Elphinstone
    • 2
  • Gernot Heiser
    • 3
  1. 1.Polytechnic Institute of PortoCISTER/ISEPPortoPortugal
  2. 2.NICTA and UNSWSydneyAustralia
  3. 3.NICTA, UNSW and Open Kernel LabsSydneyAustralia

Personalised recommendations