firmwareconcept

What's the difference between software and firmware?


I know this is a bit of a basic question, but I am a little confused and couldn't find the complete answer on Google.

I know that the difference has to deal with how permanent and malleable a section of code is. However, how do you draw the line between a set of instructions being software and firmware? Can a computer/printer/etc. have both software and firmware on it? What does OS qualify as?


Solution

  • Firmware is a kind of Software

    A block of computer instructions, no matter how permanent and malleable they are, is Software.

    Several devices are strictly connected with a portion of software. In these cases the hardware cannot run other software and that software only run on that specific hardware. We call this Firmware. And it's still Software.

    Other types of Software are Apps, Operative Systems, Videogames, Web Application Servers.

    Firmware

    In electronic systems and computing, firmware[a] is a type of software that provides control, monitoring and data manipulation of engineered products and systems.

    Firmware is a type of Software usually strictly connected with a device. Usually it doesn't change during the lifetime of the device unless some update or bug fixing is required.

    Wikipedia

    Back in 2008, the second iteration of what we today know as iOS (the iPhone and iPad Operative System) was called iPhone OS Firmware 2.0. It was a Firmware (by definition) and definitely it was a Software.

    Software

    Computer software, or simply software, is that part of a computer system that consists of encoded information or computer instructions, in contrast to the physical hardware from which the system is built.

    Wikipedia