Following are the Embedded System Software Development Tools:

1. Cross-assmbler

A cross assembler is a assembler that is run on a computer Operating System(host system) of a different type from the system.

– Cross-assembler enable us to program system that are not general computer such as Embedded System.

– Depending on the time period, the machine code resulting from assembler and linking process have been fed to the target prototype or programming device such as PROM, ROM or Flash memory etc through a serial link, through punched card or by other means.

– The format may be exact bit by bit copy of machine code or some check summed text based on the representation of code Intel hex as well as other format.

2. Cross-Compiler


A Cross-compiler is a compiler capable to create executing code for a plate form other than one on which compiler is running. Example a compiler that runs on windows-7 PC not generate port that generate Android smart phone in Cross compiler.

– A Cross-compiler is necessary to compile for multiple plate forms from the machine.

– A plate form port be in physible for a compiler to run such as for microcontroller of an Embedded System because both contains no Operating System.

– Cross-compiler is for cross-plate form software development of binary code while a source to source compiler translate from one programming language to another in text form.

– In a paravisualization, one machine runs many operating system and a Cross-compiler port generate an executable for each of them from one main source.


– Embedded Computer where a device has extremely limited resources.

– Compiling for multiple machine.

– Compiling on a server.

3. Debugger

– As the name suggests, a debugger is a tool used to debug the code.

– It is important to test whether the code we have written is free from errors or not. So, a debugger is used for this testing.

– It goes through the whole code and tests it for errors and bugs.

– It tests our code for different types of errors for example: runtime error or a syntax error and notifies us wherever it occurs.

– The line number or location of error is shown by debugger so we can go ahead and rectify it.

– So from the function, we can see how important tool a debugger is in the list of Embedded System Software Development Tools.

4. Downloader

– Once we have an executable binary image stored on the host computer, we will need to download that image to the Embedded System and execute it.

– The executable binary image is usually loaded into the memory device on the target board and execute from there.

– The most common ways to write the software from host system to target system includes PROM, ROM, Flash memory etc.