Execution Monitoring of an Embedded Flight Control System Using Regular Expressions to Match Filtered Event Streams
Peter Vaughan Truslow, Robert H. Klenke, Alexander Will · 2024
With the increasing prevalence of UAVs in the airspace, the reliability of such systems is more important than ever. In complex Cyber-Physical Systems (CPS) like UAV Flight Control Systems (FCS), static verification of all of the system software may be impractical due to the significant amount of code increasing the difficulty of verification. Monitoring the execution of the FCS and other CPS at runtime on a UAV can allow for violations of software specifications to be detected in a timely fashion, so that any mitigation strategies can be employed. Even in cases where there is no present mitigation strategy, runtime execution monitoring will allow such violations to be observed and logged that may have been missed during testing, so that they can be fixed by the maintainers. A method of monitoring the software execution of a CPS is presented, where the CPS code is instrumented in a lightweight way that emits events containing a thread and event ID during execution. A run-time monitor processes these events using regular expression-based specifications in real time to detect violations of execution specifications.