Final Machine Implementable Software
- Its like a table of address and bytes at each address of the system memory
- The table has to read as a ROM image for the targeted hardware.
- bytes are allocated for Stack Space, Startup code, ISRs, Kernels,etc
- If the system is updated, then the storage of bytes in the System ROM image also to be changed or updated.
Software for a Processor Specific Assembly Language
- This technique is widely used now a days, in which the programmer should aware of the processor specfic assmebly language to program
- Cross Assembler is one which creates object code for a target architecture in which the input is the assembly language
- Cross Compiler is one which creates object code for a different target architecture in which the input is a high level language
- Linker is an entity in which the linking files or libraries which are required to execute a program are linked during the runtime.
- Loader loads the program from the secondary memory to main memory.
- Locator also called as relocator deals with the addressing issues in the main memory.
- Device programmer or program burner which downloads the exe file into the Chip or IC.
Software in High Level Languages
- Mainly C, C++ and Java are the languages helpful in designing embedded systems,
- C is major source language for embedded Systems.
- C contains—– Preprocessing, Main function, Interrupt Service Routines, Tasks (number of tasks 1….N), Kernel or Scheduler, Standard Libraries or functions.