Operating systems are extremely customized. It is therefore almost impossible to find two similar systems in different environments. However, there are three major classifications determined by the mode of operation.
1. Hard RTOS
Hard RTOS has to perform its job on accurate time strictly. If a system has to finish the job and produce the result within a 5 second then it must show the result exactly by 5th second, not 4th nor 6th. If it doesn't do so, it's called a failed system. Hard RTOS is also known as immediate RTOS.
Example: Flight control systems, automotive systems, robotics, Railway signaling, etc.
Hard RTOS guarantees the critical task also will complete on time. A hard RTOS strictly follows the deadline or limits of the task which is given. In case this deadline is missed, the results are dangerous. For example, an airbag has to deploy within the perfect time frame. Failure to deploy may cause death or extreme destruction. It means that the deadline was missed.
2. Soft RTOS
Soft RTOS can’t guarantee about response time. It may or may not be in a probabilistic manner. i.e. response time is important but not problematic to the operation of a system. The soft system is a priority-based system. It first gives the priority to the critical tasks over another task. The time constraint is soft means though few misses occur it’s not produced serious harm.
Systems where deadlines are important but which will still function correctly if deadlines are occasionally missed. Instead of failure of results, the system will perform poorly so the jobs will complete late. Example: Banking system, multimedia, DVD players, mobile phones, etc.
The effects of missing a deadline with a soft RTOS are not as dangerous as in the previous case. The processes can be reversed or corrections made without much effect on the product or process. An example is the creation of a database that is used for storage purposes.
3. Firm RTOS.
Some applications that neither fall into hard RTOS nor soft RTOS are called as firm RTOS. It provides the occasional deadline but discards the jobs which are not performed within a time. There is no value for a response that occurs past a specific deadline. Failure to meet the timing requirements is undesirable. A single system may have both hard and soft real-time Subsystems. In reality, many systems will have a cost function associated with missing each deadline. Another characteristic of this system is that it rarely runs on dedicated real-time hardware.