Embedded software is software that is integrated into consumer goods or equipment, so that they show 'intelligent behavior'. The essence of an embedded system is that software is embedded into a hardware device.
The applications of embedded software are numerous and because chips are becoming cheaper and more flexible, more and more embedded systems are appearing on the market. Indeed without us knowing it, our daily life has become strewn with embedded applications: in ATMs, copying machines, industrial measuring equipment, robots, hospital equipment, cell phones, microwaves, washing machines, photographic equipment, consumer electronics and modern cars. There are however critical applications of embedded systems that we are not aware of every day, such as pacemakers, hearing aids, missiles, most operating systems in aircrafts and the space and underwater industries. It is not surprising that the number of embedded software applications will continue to increase. Nor should we be surprised that Triodor Software has a solid foundation where the development of embedded software is concerned.
Properties of embedded systems
The explosion of embedded systems is largely due to five main features. First, embedded systems are heterogeneous. This means that embedded systems are able to communicate with different types of networks and other embedded systems.
Second, many embedded systems are economical. To operate economically, these systems can, for instance, run on energy from their surroundings, such as sunlight and body heat. Running economically is, in fact a prerequisite, since most embedded systems are not linked to electricity networks.
Reliability is the third feature. Embedded systems must function independently and reliably for a long time. A good example is the ABS function in cars, which in critical situations must not fail.
Also, embedded systems are mostly invisible. They are built into machinery or equipment, usually without the user's awareness. This is possible because embedded software is dealt with in a different way from a 'normal' computer. While the latter gets its instructions from humans via a keyboard or switch, an embedded system often responds automatically to the environment without human intervention. It uses sensors that analyze and then respond to voice, temperature or air quality.
Finally, embedded systems are flexible. Flexibility is important for embedded systems to adapt to individual user's needs or neighboring embedded systems. This again illustrates the importance of heterogeneity: an embedded system must be able to communicate with a neighboring system. The system can even be self-configuring.