2.1 About embedded
When developing embedded applications, the resources available in the development environment normally differ from those on the target hardware.
It is important to consider the process involved in moving an embedded application from the
development or debugging environment to a system that runs standalone on target
When developing embedded software, you must consider the following:
Understand the default compilation
tool behavior and the target environment so that you appreciate
the steps necessary to move from a debug or development build to
a fully standalone production version of the application.
Some C library functionality executes by using debug
environment resources. If used, you must re-implement this functionality
to make use of target hardware.
The toolchain has no inherent knowledge of the memory
map of any given target. You must tailor the image memory map to
the memory layout of the target hardware.
An embedded application must perform some initialization, such
as stack and heap initialization, before the main application can
be run. A complete initialization sequence requires code that you
implement in addition to the ARM Compiler C library initialization routines.