En un sistema embebido típico, el código de inicio como mínimo tendrá que
cargar todas las variables inicializadas con sus valores definidos y poner a cero todos
Variables no inicializadas. Dependiendo de la plataforma de hardware, puede
También tiene que configurar el puntero de pila de CPU [en algunas plataformas de hardware, un
reiniciará automáticamente el puntero de pila en la parte superior de la memoria, pero en
otras plataformas debe configurarse manualmente] o configurar otras características
en la CPU o controlador de memoria.
El código de inicio suele ser bastante corto y simple, y algunas plataformas pueden
documente cómo funciona y permita a un usuario sustituir otra cosa (por ejemplo, si
un sistema integrado deberá tener una copia de rutina de inicio provista por el usuario
Algún código de un chip flash de serie en la RAM y luego ejecutarlo, puede hacer que
tiene sentido tener variables inicializadas que sean parte de la imagen del código, en lugar de
teniendo sus valores iniciales formando parte de la imagen de código que se copia a
otra área de RAM en el inicio, pero luego se ignora).