Characteristics of real-time systems and their issues related to designing both soft and hard real-time operating systems are given below.
The following characteristics are typical of many real-time systems:
- Simple and Single purpose
- Small size
- Inexpensively mass-produced
- Specific timing requirements
Simple and Single Purpose
A Real-Time Operating System is basically designed for a single purpose only. It doesn’t serve the various applications within a single platform. E.g: Washing machine is an embedded real-time machine which is used for washing the clothes only. Same like a microwave oven which is used just for cooking the food. RTOS don’t have use for multiple purposes so it’s a simple in design.
Many real-time systems exist in environments where physical space is limited. E.g: Space required for wristwatch or microwave is very less as compared to a Computer system. So we can say that the real-time system doesn’t require both CPU power and memory. Whereas most PC and server systems have 32 or 64-bit processors, many real-time systems run on 8 or 16-bit processors. Similarly, a desktop PC might have several gigabytes of physical memory, whereas a real-time system might have less than a megabyte.
The Real-time systems are found mostly in home appliances and consumer devices. Cost of such devices like digital cameras, microwave ovens, and thermostats is really affordable to the users. So these are mass-produced in very cost-conscious environments. Thus, the microprocessors for real-time systems must also be inexpensively mass-produced.
Specific timing requirements
Real-time operating systems should consider timing requirements by using scheduling algorithms that give real-time processes the highest scheduling priorities. Scheduler decides the priority of tasks and priority of tasks does not degrade over time. Timing requirements can be addressed by minimizing the response time of interrupts.
A critical real-time system requires sufficient time for processing external events. This is known as the response time and it lies within a predetermined value in all possible situations. Basically, a real-time system is characterized by correctness that involves both the correctness and timeliness of the logical output.
Some systems might be operated for a long time without user intervention. The real-time system provides the reliability that it surely produces a result in a given time and chooses the most profitable activity for the current operation.
Performance is an important aspect that must be considered when choosing an RTOS. Real-time operating systems are different and perform differently. The key aspect for an RTOS is that its determinism guarantees that request and responses of data happen within a set period of time no matter what else is happening in the PC system.
When determining the best RTOS, ask questions such as whether the system is showing any jitters within your tolerance range and thereby providing the determinism that you need. RTOS performance should be determined by a system’s dependable in executing calls within a specified period, regardless of anything else happening on the system.