Real-time computing is an enabling technology for many important application areas, including process control, nuclear power plants, agile manufacturing, intelligent vehicle highway systems, avionics, air-traffic control, telecommunications (the information superhighway), multimedia, real-time simulation, virtual reality, medical applications (e.g., telemedicine and intensive-care monitoring), and defense applications (e.g., command, control and communications). In particular, almost all safety-critical systems and many embedded computer systems are real-time systems. Further, real-time technology is becoming increasingly important and pervasive, e.g., more and more infrastructure of the world depends on it.
Strategic directions for research in real-time computing involve addressing new types of real-time systems including open real-time systems, globally distributed real-time, and multimedia systems. For each of these, research is required in the areas of system evolution, composibility, software engineering, the science of performance guarantees, reliability and formal verification, general system issues, programming languages, and education. Economic and safety considerations, as well as the special problems that timing constraints cause, must be taken into account in the solutions.
In Section 2, several examples of real-time systems, their corresponding importance, and several examples of research success are presented. In Section 3 key future challenges and research related to strategic directions are highlighted. A vision of the field for the next ten years is presented in Section 4. Section 5 summarizes the paper.
2. EXAMPLES OF REAL-TIME SYSTEMS AND RESEARCH SUCCESSES
A real-time system is one in which the correctness of the system depends not only on the logical results, but also on the time at which the results are produced. Many real-time systems are embedded systems, i.e., they are components of a larger system. If incorrect operation of a system can lead to loss of life or other catastrophes, it is called a safety-critical system - air-traffic control, for instance. An air-traffic control system must continuously manage massive amounts of data. Unlike some large data-management systems, such as airline reservations, air-traffic control data is constantly changing and has extremely high value (related to public safety) for very short amounts of time (response-time requirements vary from a few milliseconds for radar data to several seconds for flight control information). At completion, the new U.S. air-traffic control system is estimated to cost over five billion dollars. However, the system is so large and complex (the new system will have between 1 and 2 million lines of code and thousands of consoles) that new real-time research is needed to improve safety even further, lower the cost of the system and its maintenance, and provide for its continual evolution as the system grows in size and complexity. Together with the need for safety, there is a need for a more scientific basis for the coherent treatment of time and time-based functionality, concurrency, and dependability.
Real-time and embedded computing also plays a key role in many industrial sectors. Consider the automobile industry. Auto manufacturers can remain competitive only if they incorporate state-of-the-art real-time computing systems into their cars. In the future, distributed real-time control systems will replace and enhance many of the conventional control systems of the car, making cars more efficient and adding to public safety. Before distributed real-time control systems can be used, several significant research challenges must be addressed: precise real-time response to the microsecond in a distributed system, fault tolerance under strict timing requirements, maintainability, and testability under competitive pricing pressures.
Research in real-time computing has been very effective. For example, advances in the science of temporal quality-of-service (QoS) guarantees have led to many schedulability conditions and efficient, robust, and accurate validation algorithms for real-time applications such as digital control and constant-bit-rate video and audio. The validation technology built on these theoretical advances [Klein et al. 1993] in the design and development of real-life systems has now been used successfully. (The software system onboard the satellites in the NAVSTAR Global Positioning System (GPS), for example). Together with specialized hardware, this system maintains an accurate timing signal for navigation users, monitors the integrity of the navigation information, estimates the satellite orbital parameters, and maintains the synchronization of the GPS constellation. The timely completion of many tasks in this system must be guaranteed because many terrestrial applications are dependent on GPS information and erroneous GPS information could have serious consequences.
The real-time software industry is another example of the success of real-time technology. This industry has closely followed the progress of the semiconductor industry in general and the microprocessor industry in particular. Current estimates are that over 2 billion dollars are spent annually on tools, application software, and embedded operating systems. This market is also growing at approximately 25% per year. The commercial real-time operating system market, which started around 1981, is currently over $100 million per year with a 30-35% annual growth rate. Commercial real-time operating systems are used in a wide variety of embedded systems including avionics, medical, communication, consumer, and instrumentation applications. Many of these systems are "mission-critical" and have been certified by government agencies, including the U.S. FAA, and its foreign equivalents. For example, the McDonnell-Douglas MD-11, the Boeing 757, 767, and 747-400 all fly with commercial off-the-shelf real-time operating systems.
Future success is also expected in many other areas. For example, real-time commerce on the Internet is transforming business. Since for every PC there are thousands of embedded computers, a thriving embedded computing industry can be expected. There will be small embedded processors in millions of products, making them more intelligent. The potential for the future use of real-time technology is unlimited.
> Part 2