Software vs Firmware
Firmware is a special name given to software that is embedded in an electronic gadget or device to make it run. Since it is a kind of software, trying to differentiate it with software may not be fruitful. What we can do is to explain the roles and functions of firmware and software to draw a comparison between the two. Since firmware is information programmed into the device such as a mobile or a computer that we purchase from the market, it is an essential part of the device that makes it possible to make use of the gadget.
While users cannot access firmware as it is software embedded in the device, software is all other applications that users can install on the gadget for various uses. There is a big difference as far as size of firmware and software is concerned. Since the purpose of firmware is to make the device ready to work, its size is very small and runs into a few kilobytes only. On the other hand, software is of different types depending upon their use and they can be even bigger than the size of your hard disc.
One can easily uninstall or make changes in software from a mobile or a computer whereas it is nearly impossible to make any alterations in the firmware supplied with the device by the manufacturer. One can save software anywhere in his computer or mobile and get access to it whenever he so desires. On the other hand, firmware is stored in a special memory that is also embedded in the device. Manufacturers deliberately do this to ensure that the user does not accidentally get to firmware and erase it by mistake. The kind of memory that was earlier used to store firmware was EEPROM but the use of flash memory has become more popular these days.
It is possible to upgrade software by downloading newer versions from the net or by adding extra files. On the other hand, you need to change the device itself if you want to0 make any changes in firmware.
Software vs Firmware
• Software is the program or application that user installs in his device whereas firmware is software that is embedded into the device by the manufacturer
• Firmware is essential to make the device run whereas software has different uses
• Firmware is very small in size whereas software can range in size from a few kilobytes to many gigabytes.
• You can make changes in software and even uninstall them while it is not the case with firmware
You can only differentiate firmware to software precisely if you’ve worked as firmware/software engineer.
A firmware is any software that is used by an embedded computer system – where cpu, bus, IO/Memory controllers, and all other parts of a microcomputer are embedded to a chip or silicon like Apple/Samsung/Intel System-On-Chip(SOC). So the size can be in Mega or Giga bytes also. Most Smartphone has internal/external memory with 32-64GB. Firmware can be installable also like an Apple/Android Apps because they are software apps that will run on embedded computer system. And remember that your OS kernel is also called as firmware. Today, most server firmwares are more complex ranging to GB size that will be run in ARM-based multi-core SOC chip or parallel SOCs.
So, any software that will run to an embedded computer system is called firmware. Size must not be a basis of our comparisons. it’s where the software will be run.