Within the last ten years real-time systems research has been transformed from a niche industry into a mainstream enterprise with clients in a wide variety of industries and academic disciplines. It will continue to grow in importance and affect an increasing number of industries as many of the reasons for the rise of its prominence will persist for the foreseeable future.
What is RTOS?
Real Time Computing and Real Time Operating Systems( RTOS ) is an
emerging discipline in software engineering. This is an embedded technology wherebythe application software does the dual function of operating system also. In RTOS thecorrectness of the system depends not only on the logical result but also on the time atwhich the results are obtained.
Real-time System
??Provides deterministic response to external events
??Has the ability to process data at its rate of occurrence
??Is deterministic in its functional & timing behavior
??Whose timing is analyzed in the worst cases not in the typical, normal cases to
guarantee a limiting response in any circumstances.
The seminar will basically provide a practical understanding of the goals, structure and operation of a real-time operating system (RTOS). The basic concepts of real-time system like the RTOS Kernel will be given a detailed description. The structure of the kernel is discussed, stressing the factors which affect response times and performance. Examples of RTOS functions such as scheduling, interrupt processing and intertask communication structures will also be discussed. Features of commercially available RTOS products are also presented.A real-time system is one where the timeliness of the result of a calculation is important Examples include military weapons systems, factory control systems, and Internet video and audio streaming. Different definitions of real-time systems exist. Here are just a few:
- Real-time computing is computing where system correctness depends not only on the correctness of the logical result of the computation but also on the result delivery time.
- A Real-Time System is an interactive system that maintains an on-going relationship with an asynchronous environment, i.e. an environment that progresses irrespective of the Real Time System, in an uncooperative manner.
- Real-time (software) (IEEE 610.12 - 1990): Pertaining a system or mode of operation in which computation is performed during the actual time that an external process occurs, in order that the computation results may be used to control, monitor, or respond in a timely manner to the external process.
From the above definitions its understood that in Real Time Systems, the
TIME is the biggest constraint. This makes real time systems different from ordinary systems. Thus in RTS data needs to be processed at some regular and timely rate. Also it should have fast response to events occurring at nonregular rates. In real world systems there is some delay between presentation of inputs and appearance of all associated outputs called the Response time. Thus a real time system must satisfy explicit response time constraints or risk severe consequences including failure.
Real - Time Systems and Real - Time Operating Systems
Timeliness is the single most important aspect of a real -time system. These systems respond to a series of external inputs, which arrive in an unpredictable fashion. The real-time systems process these inputs, take appropriate decis ions and also generate output necessary to control the peripherals connected to them. As defined by Donald Gillies "A real-time system is one in which the correctness of the computations not only depends upon the logical correctness of the computation but also upon the time in which the result is produced. If the timing constraints are not met, system failure is said to have occurred."
It is essential that the timing constraints of the system are guaranteed to be met. Guaranteeing timing behaviour requires that the system be predictable.
The design of a real -time system must specify the timing requirements of the system and ensure that the system performance is both correct and timely. There are three types of time constraints:
¢ Hard: A late response is incor rect and implies a system failure. An example of such a system is of medical equipment monitoring vital functions of a human body, where a late response would be considered as a failure.
¢ Soft: Timeliness requirements are defined by using an average respons e time. If a single computation is late, it is not usually significant, although repeated late computation can result in system failures. An example of such a system includes airlines reservation systems.
¢ Firm: This is a combination of both hard and soft t imeliness requirements. The computation has a shorter soft requirement and a longer hard requirement. For example, a patient ventilator must mechanically ventilate the patient a certain amount in a given time period. A few seconds' delay in the initiation of breath is allowed, but not more than that.
One need to distinguish between on -line systems such as an airline reservation system, which operates in real-time but with much less severe timeliness constraints than, say, a missile control system or a telephone switch. An interactive system with better response time is not a real-time system. These types of systems are often referred to as soft real time systems. In a soft real -time system (such as the airline reservation system) late data is still good dat a. However, for hard real -time systems, late data is bad data. In this paper we concentrate on the hard and firm real-time systems only.
Most real -time systems interface with and control hardware directly. The software for such systems is mostly custom -developed. Real -time Applications can be either embedded applications or non -embedded (desktop) applications. Real -time systems often do not have standard peripherals associated with a desktop computer, namely the keyboard, mouse or conventional display monitors. In most instances, real-time systems have a customized version of these devices