What is Embedded Operating System
Definition: Embedded operating system is also known as “Real-Time Operating System“. It is a specialized operating system that is introduced for several embedded systems. Main objective of designing of embedded operating system is to perform specific task for special devices which are not computers. Embedded operating system allows executing programming codes which deliver access to devices for performing their jobs.
Embedded Operating System refers as a combination of software and hardware. Embedded Operating system is written with programming code, and it helps to convert hardware language into software language like as C, C++, and finally it produces the result that easily can be understandable by human being in the different formats like as pictures, text, and voice.
Embedded operating system helps to improve entire efficiency for controlling all hardware resources as well as decreasing the response times for specific task devices were made for.
Types of Embedded Operating Systems
There are different types of embedded operating system; below explain each one.
Multi-Tasking Operating System: Multitasking operating system provides the interface for executing the multiple program tasks by single user at a same time on the one system.
True multitasking is the capable for executing and process multiple tasks concurrently without taking delay instead of switching tasks from one processor to other processor. It can perform couple of tasks in parallel with underlying the H/W or S/W.
Rate Monotonic Operating System: Some embedded systems are designed for using particular task scheduling algorithm, it is known as “Rate monotonic Scheduling”. This is priority based scheduling algorithm, and this algorithm is used in operating system as preemptive, it means all task have ability to make interrupted or suspended by other using tasks within few time duration. This operating system is used mostly to perform shorter tasks with higher priority.
In this method, the rate monotonic algorithm is designed as fully optimized for scheduling tasks, which must be done to a fixed time interval with limited resources. If a set of tasks have not able to determine to meet all deadlines using the rate monotonic algorithm, there is no other scheduling algorithm that can do a better job.
Preemptive Operating System: Preemptive operating system like as type of multitasking operating system that is getting to interpret preemptive predominance for all tasks. Higher priority tasks are always executed before lower priority tasks. This system contains scheduler that helps to get all interrupt, which are obtained from external calls. Entire control of CPU transfer from on task to other tasks, it is known as “Preemption”.
Single System Control Loop: Single System Control Loop is very simple types of operating system, and it is designed for performing only one function at once. This operating system is used in several devices like as smart phone, thermostat or temperature, digital controllable devices, and more. In this types of
OS, users can set any point of temperature variable as per desired. Several sensors are embedded in this system for determining different points of temperature in the environment.
Real Time Operating System: Real time operating system is totally depending upon the clock interrupts. This system produces the Interrupt Service Routine (ISR) interrupts. RTOS implemented the Priority system for executing all types of process. Entire RTOS is synchronized with the process, and they can make communication in between all process.ROM (Read Only Memory) chip is used for storing the RTOS because this chip is capable to store data in long life.
This operating system is used in various small types of embedded systems like as calculator, washing machine, refrigerator, and more.
Examples of Embedded Operating Systems
There are various examples of embedded operating system, where to use this operating system; such as –
- Heavy Machinery
- Industrial Control
- Medical Devices
- Chrome cast
- Jaguar Land Rover
- Boeing 787 Dream liner
- F-22 Raptor Jet
- Toyota Prius
- Ford Lincoln Aviator
- Bombardier Train Control Mgmt System
- Stryker Endoscopy Arthroscopy Resection System
- Spacecraft System like as: Curiosity Rover, the Mars Reconnaissance Orbiter, the Deep Impact space probe, the SpaceX Dragon, amount others.
- Aircraft: Airbus A400M Airlifter, Boeing 787
- Space telescopes
- Automotive: European Volkswagen RNS 510 navigation systems, Bosch Motorsports race car telemetry system
- Industrial Robots
- Test and Measurement
- Storage Systems
- Networking and Communication system
Applications of Embedded Operating Systems
Embedded operating systems are used in several applications. Here, few embedded OS which are used in mobile; like as-
- Symbian: Used in Nokia mobile.
- BlackBerry Operating System: Used only for BlackBerry Phones
- Embedded Linux: Used in Android mobile and other devices like printers
- IOS: Used in Apple devices.
- Windows Mobile Operating System: Used in only Windows mobiles.
Popular Embedded Operating Systems List
µ Clinux: It stands for “Micro-Control Linux”, and it is better updated edition of embedded Linux. It can grab all features of Linux operating System.
µC/OS-II: It is introduced on the principle of μC/OS. μC/OS – II has ability to handle of 64 tasks, and it can offer several functionalities like as memory management, synchronization, time management, interrupt services, task scheduling, and more.
eCos: It stands for “Embedded Configurable Operating System“, and it’s all components deliver enlarge number of configuration options. eCos operating system is capable to support several trending popular embedded CPUs.
FreeRTOS: It is light weight operating system, and it can support priority scheduling algorithm. It offers different types of functionalities such as semaphore, message queue, memory management, task management, time management, etc.
mbed OS: It is an open-source embedded operating system, and it delivers various systematic and other comprehensive intelligent hardware development environment.
RTX: This embedded real-time operating system is developed by ARM company, and it can support time slice, preemptive and cooperative scheduling.
VxWorks: This operating system was introduced by Wind River Company, in 1983. It is supported with memory optimization management, task synchronization, and more.
QNX: QNX was developed in 1980, and it is a commercial embedded real operating system, and it needs POSIX specification for compiling.
Other Embedded Operating Systems
- Palm OS (Programming for Palm OS)
- Windows CE
- MS-DOS or DOS Clones
- Linux, including RTLinux
- MontaVista Linux
- Unison OS
- Alios Things
- Huawei LiteOS
- MontaVista Linux