In a timing-critical system, correctness not only depends on the logical results but also on the time at which the results are produced. Examples can be found in a wide range of applications in healthcare, automotive systems, aerospace, power grids, water distribution, disaster recovery, etc. The increasing complexity of hardware and software components has imposed more and more challenges to successfully meet all the timing requirements in timing critical system designs. With increasing use of embedded systems and cyber-physical systems, timing correctness and functional correctness have to be both maintained to ensure the correct behavior of such systems.
The tutorial will feature two short talks to cover important design and research issues of timing critical systems, ranging from the historical perspectives, current design practice, to future design visions. The tutorial addresses key aspects of timing critical system design. The first lecture gives a short introduction regarding requirements and challenges of timing critical system design and an overview of scheduling issues in timing critical systems and explains some solutions back to 1970’s and their applications at present. Specifically, the assumptions and applicability of some classical results will be discussed and several misconceptions will be detailed to provide examples of misuse. The second lecture addresses the lack of flexibility of the classical real-time task models and presents the recent development of more flexible task models and the applications in automotive systems. The tutorial is concluded with open research questions that are needed for designing timing critical systems in the future.