Addressing dynamic dispatching issues in WCET analysis for object-oriented hard real-time systems
Erik Yu-Shing Hu, Guillem Bernat, Andy J. Wellings · 2003
There is a trend towards using object-oriented programming languages to develop hard real-time applications. However some object-oriented features, such as dynamic dispatching and dynamic loading, are prohibited from being used in hard realtime systems because they are either unpredictable and/or un-analysable. Arguably, these restrictions could make applications very limited and unrealistic since they could eliminate the major advantages of object-oriented programming. This paper demonstrates how we can address the dynamic dispatching issues in Worst-Case Execution Timing (WCET) analysis with minimum annotations. The major contributions include: discussing the major issues involved in using and restricting dynamic binding features; weakening the restriction of using dynamic dispatching; presenting how to estimate tighter and safer WCET value in object-oriented hard real-time systems. Our approach shows that allowing the use of dynamic dispatching can not only provide a more flexible way to develop object-oriented hard real-time applications, but also does not necessarily result in unpredictable timing analysis.