Tuesday, November 16, 2010

What is an embedded syatem?

An embedded system can be defined as a computing device that does a specific focused job. Appliance such as the air-conditions, VCD players, DVD players, printers, fax machine, mobile phone etc. are examples of embedded systems. Each of these appliances will have a processor and special hardware to meet the specific requirement of the application along with the embedded software that is executed by the processor for meeting that specific requirement. The embedded software is also called “firmware”.



Embedded systems are characterized by some special feature listed below:

  • Embedded system do very specific task, they cannot be programmed for different things. 
  • Embedded systems have very limited resources, particularly the memory. Generally, they do not have secondary storage device such as the CDROM or the floppy disk.
  • Embedded systems have to work against some deadlines. A specific job has to be completed within specific time. In some embedded system, called real-time systems, the deadlines are stringent. Missing deadline may cause a catastrophe-loss of life or damage to property.
  • Embedded systems are constrained for power. As many embedded systems operate through battery, the power consumption has to be very low.
  • Embedded systems need to be highly reliable. Once in a while, pressing ALT+CTR+DEL is OK but you cannot afford to reset your embedded system.
  • Some embedded systems have to operate in extreme environmental condition such as very high temperature and humidity. 
  • Embedded system that addresses the consumer market (for example, electronic toys) are very cost sensitive. Even a reduction of $0.1 is lot of cost saving, because thousands or millions system may be sold. 
  • Unlike desktop computers in which the hardware platform is dominated by Intel and the operating system is dominated by Microsoft, there is wide verity of processor and operating systems for the embedded systems. So, choosing the right platform is the most complex task.