Real-time systems control many crucial aspects of our modern-day society – from flight control, defence, space systems, medical devices, and even networked multimedia electronics. These systems receive information from their environment, or from a user, and perform a task to be completed before a certain deadline. In the verification of real-time systems, it’s vital that they can meet their deadlines to the precision necessary for their tasks. Since many of these systems keep us safe from harm, being able to rely on them to operate effectively can help avoid critical, even life or death, situations.
To illustrate the idea, air traffic control systems are important real-time systems. They need information from their environment and must process this by their allocated deadlines in order for our airspace to operate smoothly. Crashes could ensue if information isn’t processed in time. Throughout early-stage development of real-time systems, worst-case execution times (WCET) are analysed for tasks to ensure that the systems will operate safely even if the software takes its worst-case amount of time to complete. However, it’s challenging to acquire precise WCET values, and so engineers often opt for WCET ranges to ensure safe operations of the systems.
Researchers at the University of Luxembourg’s Interdisciplinary Centre for Security, Reliability and Trust (SnT) have been working together with LuxSpace, the Betzdorf-based provider of space systems, applications and services, in the verification of their real-time systems to ensure they meet their deadlines. Their real-time systems span a series of satellites, which provide important services on Earth. For example, in 2020, LuxSpace launched their ESAIL fleet of 53 small satellites into orbit, which serves the maritime sector by tracking ship positioning on Earth. If these satellites were to not execute their tasks as planned, ships could lose their direction and assistance from their GPS. In such real-time systems, being able to operate within time constraints prevents communication failures and keeps important everyday services operating smoothly.
Throughout the four-year project, the research team, comprising Dr. Jaekwon Lee, Dr. Seung Yeob Shin, and Prof. Lionel Briand from SnT’s Software Verification and Validation (SVV) research group, studied the estimation of WCET in real-time systems, and proposed three possible approaches that would effectively estimate WCET ranges. Furthermore, the researchers extended their field of work to also include setting priorities for tasks to execute.
Not all real-time systems in our industries are constrained by hard deadlines. In fact, some systems can tolerate occasional deadline misses, as long as their tasks are completed within reasonable times. The best example of this is a web browser. In an ideal world, a web browser will open a site swiftly after clicking on it. If it doesn’t open straightaway, it may not have critical implications, but does harm the user experience. Assigning priorities to this type of applications can improve the user experience by knowing which application (i.e., task) to execute first. For example, if a system update on a web browser is scheduled to begin at 4pm, but at the same time you receive a Teams call, the Teams call will be executed first since it is of higher priority to the user.