Non-disruptive large-scale component updates for real-time controllers
Michael Wahler, Stefan Richter, Sumit Kumar, Manuel Oriol · 2011
Real-time controllers handle safety-critical environments such as power grids in a continuous way. Controllers are only updated during the same maintenance periods as the plant they control. As a consequence, old software versions are usually used longer than necessary, which can have a negative impact on performance, reliability, or security. This paper presents a solution for updating component-based controllers at runtime in a non-disruptive way - there is no “bump” in the control cycle. This solution allows for simultaneous updates of real-time components with arbitrarily large states. The solution is validated by demonstrating a large-scale dynamic software update on an embedded controller with a 1 kHz control cycle on RT Linux. As a corollary, we show that an arbitrary number of components can be simultaneously updated in a non-disruptive way.