•
An embedded
system is any computer system hidden inside a product other than a computer.
•
They
will encounter a number of difficulties when writing embedded system software
in addition to those we encounter when we write applications
–
Throughput – Our
system may need to handle a lot of data in a short period of time.
–
Response–Our
system may need to react to events quickly
–
Testability–Setting
up equipment to test embedded software can be difficult
–
Debugability–Without
a screen or a keyboard, finding out what the software is doing wrong (other
than not working) is a troublesome problem
–
Reliability – embedded systems must be able to handle any situation
without human intervention
–
Memory space – Memory is limited on embedded systems, and you must make
the software and the data fit into whatever memory exists
–
Program installation – you will need special tools to get your software into
embedded systems
–
Power consumption – Portable systems must run on battery power, and the
software in these systems must conserve power
–
Processor hogs – computing that requires large amounts of CPU time can
complicate the response problem
–
Cost – Reducing the cost of the hardware is a concern in many
embedded system projects; software often operates on hardware that is barely
adequate for the job.
•
Embedded
systems have a microprocessor/ microcontroller and a memory. Some have a serial port or a network
connection. They usually do not have
keyboards, screens or disk drives.