An embedded operating system (OS) is a specialized operating system designed to perform a specific task for a device that is not a computer. An embedded operating system’s main job is to run the code that allows the device to do its job. The embedded OS also makes the device’s hardware accessible to the software that is running on top of the OS.
An embedded system is a computer that supports a machine. Examples include computers in cars, traffic lights, digital televisions, ATMs, airplane controls, point of sale (POS) terminals, digital cameras, GPS navigation systems, elevators, digital media receivers and smart meters, among many other possibilities.
Examples of embedded OS
Many modern electronic devices are based on Arduino or Raspberry PI. Raspberry PI devices often run an ARM-based Linux kernel, but there are actually a number of different operating systems that can be run on Raspberry PI devices. Arduino devices have a much more primitive embedded operating system that acts as little more than a boot loader and a command interpreter.
How an embedded OS works
In contrast to an operating system for a general-purpose computer, an embedded operating system can be quite limited in terms of function – depending on the device in question, the system may only run a single application. However, that single application is crucial to the device’s operation, so an embedded OS must be reliable and able to run with constraints on memory, size and processing power. An embedded operating system allows the device to do its job. In the case of Raspberry PI for example, an SD card acts as the device’s hard drive and contains the code that runs on the device. Because the SD card is removable, its contents can be modified on demand. Because the embedded OS makes the device’s hardware accessible to the application that is running on top of the OS, hardware components such as USB ports and HDMI ports can be leveraged by the applications running on the device.
Embedded vs. Non-Embedded
An embedded operating system is integrated into a device, and depending on the device, may reside on a chip. Embedded operating systems tend to be limited in scope with regard to what they can do. In contrast, a non-embedded operating system tends to run from a hard disk or an SSD. Non-embedded operating systems such as Windows 10 or Mac OS tend to be user configurable and upgradable, and they are usually designed for general purpose use.