Embedded software often also needs to meet real-time requirements. For example, a control system might have a requirement to output control signals to a motor controller every 5 milliseconds, where any additional delay is considered a failure. Such requirements are not only affected by the execution time of the specific thread, but also by dependencies on other threads. Thus, verifying real-time requirements is about more than measuring timing metrics. It is also about identifying potential risks from thread interactions that may affect the timing requirements.
So, how do you verify that a design is good from a multi-threading perspective?







