|
Embedded
system is a combination of computer hardware, software and, perhaps, additional
mechanical parts, designed to perform a specific function. Embedded
systems are usually programmed in high level language that is compiled (and/or
assembled) into an executable ("machine") code. These are loaded into
Read Only Memory (ROM) and called "firmware", "microcode"
or a "microkernel". The microprocessor is 8-bit or 16-bit.The bit size
refers to the amount of memory accessed by the processor. There is usually no
operating system and perhaps 0.5k of RAM. The functions implemented normally have
no priorities. As the need for features increases and/or as the need to establish
priorities arises, it becomes more important to have some sort of decision making
mechanism be part of the embedded system. The most advanced systems actually have
a tiny, streamlined OS running the show, executing on a 32-bit or 64-bit processor.
This is called RTOS.C
has become the language of choice for embedded programmers, because it has the
benefit of processor independence, which allows the programmer to concentrate
on algorithms and applications, rather than on the details of processor architecture.
However, many of its advantages apply equally to other high-level languages as
well. Perhaps the greatest strength of C is that it gives embedded programmers
an extraordinary degree of direct hardware control without sacrificing the benefits
of high-level languages. Compilers and cross compilers are also available for
almost every processor with C.Any source code written in C or C++ or Assembly
language must be converted into an executable image that can be loaded onto a
ROM chip. The process of converting the source code representation of your embedded
software into an executable image involves three distinct steps, and the system
or computer on which these processes are executed is called a host computer.First,
each of the source files
that make an embedded application must be compiled or assembled into distinct
object files.Second, all of the object files that result from the first step must
be linked into a final object file called the relocatable program
|