Embedded software is a specialized application or firmware that runs on a processing cluster embedded into an SoC or IC. Almost any electronic product can contain one or several embedded processors, common in today's automobiles, factor floor automation, avionics, medical devices and more.
What are the different types of embedded software?
Embedded software applications are specialized programming within non-PC devices – either as part of a microchip or as part of another application that sits on top of the chip – to control specific functions of the device. Unlike PC applications, which can be installed on various computer systems and modified to provide different levels of functionality, embedded software has fixed hardware requirements and capabilities. It is created exclusively for the particular device it runs on, with processing and memory restrictions tied directly to it’s specifications. In the context of this discussion, embedded software includes applications, firmware, middleware and operating systems that execute on a single microprocessor or cluster of microprocessors “embedded” within additional logic.
Characteristics and features of embedded systems
Even though there are many types of embedded systems, they all share the same beneficial features and design characteristics.
All embedded systems are task-specific
They execute the same pre-programmed function throughout their usable life and cannot be altered
All embedded systems are high-efficiency
The resource requirements of embedded software should never exceed the capacity of the hardware it is installed on