The simple definition of firmware is, a software which resides in embedded system”. The word firmware is coined in comparison to the way software is stored in desktop PC.
Unlike desktop PC’s, embedded systems hold and run the program from a semiconductor memory. These devices are called EPROM or flash device. Storing the program or software into these memory devices is called, burning or flashing.
Generally embedded software doesn’t change much once it is flashed.
Unlike desktop PC’S which run OS and software from hard drives and is prone to hard drive crash, embedded systems software is firmly held in semiconductor memory device and it is less prone to fail. So it is called firmware.
So, firmware is a term used to refer to the software in embedded systems.