Embedded Software: A Different Kind of Software
Embedded software is characterized by limited resources: time
(real-time behavior), power, memory, bandwidth.
Embedded software also needs to achieve a level of quality far higher
than that demanded from most other software (nobody wants to reboot
their fridge, nor their brake controller).
Embedded software also requires a different way of thinking from
"desktop software".
In desktop software the fundamental notion is sequentiality:
the computational model consists in the sequential execution of
instructions; concurrency (the use of parallel threads) is used
sparingly.
In contrast, in the real world, and in the systems controlled by
embedded software, things happen concurrently: in a car, the
four wheels spins and the motor runs, all at the same time.
Consequently, the fundamental notion in embedded software is
concurrent behavior of the software, and of the system that
the software controls.
Go back.
|