What are the differences between firmware and software/OS?











up vote
14
down vote

favorite
5













  1. I was wondering what differences are
    between firmware and software?

  2. What differences are
    between firmware and OS?

  3. Are boot-loaders firmware? Bios is.
    How about GNU grub? Is grub software or firmware?










share|improve this question




























    up vote
    14
    down vote

    favorite
    5













    1. I was wondering what differences are
      between firmware and software?

    2. What differences are
      between firmware and OS?

    3. Are boot-loaders firmware? Bios is.
      How about GNU grub? Is grub software or firmware?










    share|improve this question


























      up vote
      14
      down vote

      favorite
      5









      up vote
      14
      down vote

      favorite
      5






      5






      1. I was wondering what differences are
        between firmware and software?

      2. What differences are
        between firmware and OS?

      3. Are boot-loaders firmware? Bios is.
        How about GNU grub? Is grub software or firmware?










      share|improve this question
















      1. I was wondering what differences are
        between firmware and software?

      2. What differences are
        between firmware and OS?

      3. Are boot-loaders firmware? Bios is.
        How about GNU grub? Is grub software or firmware?







      bootloader firmware terminology






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Nov 2 '16 at 19:41









      Ƭᴇcʜιᴇ007

      98.5k14155212




      98.5k14155212










      asked Jun 19 '11 at 23:57









      Tim

      5,90945126194




      5,90945126194






















          5 Answers
          5






          active

          oldest

          votes

















          up vote
          12
          down vote













          Traditionally, firmware is CPU code that resides on a unmodifiable ROM that is necessary for a hardware device to boot and load an operating system or a binary (software) of choice. Sometimes no choice of a binary is given and one attached to the boot-portion firmware is used.



          All CPUs have the classical problem in that, since they fetch instructions from memory, some sort of pre-programmed memory must exist at a fixed address when the CPU starts, so that it can do something automatically on startup. Firmware exists for this purpose. Some firmware also has code that later programs can use for services. BIOS firmware exposes many functions that DOS used for basic input and output (hence why BIOS stands for Basic Input Output System).



          The distinction is not totally clear. Some (most) WLAN cards require firmware to be loaded before they will start functioning. However, usually there is a tiny firmware on the device whose job is to do nothing but accept a main "firmware" over the USB bus when the device is started by the operating system, and hand over control when it is loaded. Most people would say all of it is firmware.



          Since EEPROMs and flash memory became more common, firmware usually no longer resides in an unwriteable ROM but in flash memory and can be modified. The distinction between firmware and software is blurry today with the advent of flash memory. However, one thing hasn't changed over the years and that is CPUs are still CPUs and require some code, or firmware, to be visible at startup to, well, start up.



          CPUs are in more devices than ever before so developing and allowing firmware to be updated in the case of bugs is a big deal now and many hardware devices with a CPU have firmware update interfaces, sometimes undocumented.



          A firmware can be used to load an OS. It can contain a boot loader or code that loads a boot loader. It is possible to store an OS image in the same location as firmware and let the boot-time code of firmware load the OS (cell phones do this). PC BIOSes as a rule do not include boot loaders. U-boot (not for PCs) is an example of a "filesystem-aware" firmware that does directly load an operating system.



          FIrmwares usually do not have all the features of a full operating system because of the principle that simpler is more reliable. The simplest firmwares simply initialize a minimum of hardware, load a sector or block off of a storage device and throw execution to it. This is simple to program and therefore easy to verify as bug free. Bugs in boot time firmware particularly can spell disaster for a device.






          share|improve this answer























          • Thanks! How are firmware and device driver different, as both control devices?
            – Tim
            Jun 20 '11 at 1:53












          • For devices like WLAN cards: Drivers are built to interface between a hardware device and the operating system itself. Drivers run on the PC. Firmware is built to interface between a hardware device and a driver over a bus (USB, IDE, PCI-E, etc). Firmware runs on the device itself.
            – LawrenceC
            Jun 20 '11 at 11:17


















          up vote
          3
          down vote













          The boundaries can be a little fuzzy.



          Software typically is any instructions or routine that a computer can do.



          Firmware is typically specific instructions (software) that are loaded in/on to hardware in order for them to perform their function.



          I would say that pretty much every piece of hardware has some sort of firmware included in it.



          Again, I do not think there is a definitive guide as to where one starts and stops - all what firmware is, is software which is compiled for whatever chip is in the device.



          As for your second question about what is firmware, I would say that bootloaders are not but the BIOS is and grub isn't.



          This is very hard to draw the line but... the way I look at it is that the BIOS (now EFI) is the firmware of the motherboard, and the Hard drive has it's own firmware.



          So, the bootloader/grub is pure software - it may do tasks with the hard drive, but it is not directly actually controlling any hardware.



          If you take an embedded device such as an Iphone/Ipad, where does the firmware end and software begin!? If you consider IOS to be firmware, then why not Windows or similar.



          To me, this shows that the boundaries are where the manufacturers or vendors of any device allow you to take control and it is not actually a fixed thing/exact science.



          For example,




          • A motherboard is for booting - the firmware is the BIOS, when it hands over to the next part

          • The optical and hard drives are components for reading/writing data, the firmware is the part that does this job upon request.

          • The graphics card is a component for displaying graphics, the firmware is the part that upon request draws output.


          To complicate further - when I say upon request, this can be from a driver within other software



          Now, an Ipad, or an Iphone, or any other embedded device...




          • A device that is bought off the shelf to perform a limited function (e.g run IOS) is the firmware as you do not (or should not) manually modify it. It may contain other pieces of hardware inside, but it is presented as one device and you do not purchase the hardware separately, there by, any update available will update everything invisibly (e.g. a phone, you do not manually update the GSM controller, power variables and more, you just have an update that may modify these things).


          So.... To sum up...



          For me, I would say that firmware = the software that comes on devices where as pure software is purchased as data, but I am sure others may say different!






          share|improve this answer





















          • I hope this reads ok... I found this a very interesting topic to write about, but it took me over half an hour and it is very early in the morning/I am very tired... and I am not always clear at the best of times! ... Happy to answer questions and I just hope I didn't repeat myself too much!
            – William Hilsum
            Jun 20 '11 at 0:46










          • Good morning! Thank you so much!
            – Tim
            Jun 20 '11 at 0:47


















          up vote
          3
          down vote














          1. The difference is basically in where the code resides. Generally, firmware is burned into some kind of EPROM or embedded flash memory, whereas software is stored on a mass stroage device.


          2. The OS of a device may reside in firmware or software. On a PC the firmware (BIOS), just provides low level services that a Software OS (Windows/Linux/etc) can make use of. In mobile devices the entrie OS is generally in firmware.


          3. By the definition in (1) the computer's BIOS is firmware, but bootloaders, which reside on the hard-disk are software.







          share|improve this answer




























            up vote
            3
            down vote













            Firmware is software, except instead of being stored on disk, it is stored in an EEPROM which is usually flashable to allow updates.



            Firmware is in a way an operating system, but much more restrictive and single-purposed because it is only for controlling that device, whereas an OS is a general-purpose system that allows any kind of software to be run on multiple hardware devices.



            No, boot-loaders are not firmware because they are software that exists on the disk. Yes, the BIOS is because it exists on a (flashable) chip. No, GRUB is not firmware either because, again it is not firm (there is no hardware component to it), it is software that exists on disk—though it could (and may) be installed on a chip, in which case it would be firmware.






            share|improve this answer




























              up vote
              0
              down vote













              I want to give an answer in just only a few words.firmware and operating system both of them is very important for any digital system to start up and run properly and we will discuss how these both works. Suppose we have switched off our smartphone and we switch on after switching the power button in our smartphone this command will go to BIOS chip which is a non-volatile memory and containing some programme of firmware.this bios chip firmware start working and firmware give command in both directions to RAM and ROM it gives command ram to take off operating system codes from Rom and another command to ROM to give a copy of his operating system to RAM to active all other components of that System.






              share|improve this answer





















                Your Answer








                StackExchange.ready(function() {
                var channelOptions = {
                tags: "".split(" "),
                id: "3"
                };
                initTagRenderer("".split(" "), "".split(" "), channelOptions);

                StackExchange.using("externalEditor", function() {
                // Have to fire editor after snippets, if snippets enabled
                if (StackExchange.settings.snippets.snippetsEnabled) {
                StackExchange.using("snippets", function() {
                createEditor();
                });
                }
                else {
                createEditor();
                }
                });

                function createEditor() {
                StackExchange.prepareEditor({
                heartbeatType: 'answer',
                convertImagesToLinks: true,
                noModals: true,
                showLowRepImageUploadWarning: true,
                reputationToPostImages: 10,
                bindNavPrevention: true,
                postfix: "",
                imageUploader: {
                brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
                contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
                allowUrls: true
                },
                onDemand: true,
                discardSelector: ".discard-answer"
                ,immediatelyShowMarkdownHelp:true
                });


                }
                });














                draft saved

                draft discarded


















                StackExchange.ready(
                function () {
                StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f299391%2fwhat-are-the-differences-between-firmware-and-software-os%23new-answer', 'question_page');
                }
                );

                Post as a guest















                Required, but never shown

























                5 Answers
                5






                active

                oldest

                votes








                5 Answers
                5






                active

                oldest

                votes









                active

                oldest

                votes






                active

                oldest

                votes








                up vote
                12
                down vote













                Traditionally, firmware is CPU code that resides on a unmodifiable ROM that is necessary for a hardware device to boot and load an operating system or a binary (software) of choice. Sometimes no choice of a binary is given and one attached to the boot-portion firmware is used.



                All CPUs have the classical problem in that, since they fetch instructions from memory, some sort of pre-programmed memory must exist at a fixed address when the CPU starts, so that it can do something automatically on startup. Firmware exists for this purpose. Some firmware also has code that later programs can use for services. BIOS firmware exposes many functions that DOS used for basic input and output (hence why BIOS stands for Basic Input Output System).



                The distinction is not totally clear. Some (most) WLAN cards require firmware to be loaded before they will start functioning. However, usually there is a tiny firmware on the device whose job is to do nothing but accept a main "firmware" over the USB bus when the device is started by the operating system, and hand over control when it is loaded. Most people would say all of it is firmware.



                Since EEPROMs and flash memory became more common, firmware usually no longer resides in an unwriteable ROM but in flash memory and can be modified. The distinction between firmware and software is blurry today with the advent of flash memory. However, one thing hasn't changed over the years and that is CPUs are still CPUs and require some code, or firmware, to be visible at startup to, well, start up.



                CPUs are in more devices than ever before so developing and allowing firmware to be updated in the case of bugs is a big deal now and many hardware devices with a CPU have firmware update interfaces, sometimes undocumented.



                A firmware can be used to load an OS. It can contain a boot loader or code that loads a boot loader. It is possible to store an OS image in the same location as firmware and let the boot-time code of firmware load the OS (cell phones do this). PC BIOSes as a rule do not include boot loaders. U-boot (not for PCs) is an example of a "filesystem-aware" firmware that does directly load an operating system.



                FIrmwares usually do not have all the features of a full operating system because of the principle that simpler is more reliable. The simplest firmwares simply initialize a minimum of hardware, load a sector or block off of a storage device and throw execution to it. This is simple to program and therefore easy to verify as bug free. Bugs in boot time firmware particularly can spell disaster for a device.






                share|improve this answer























                • Thanks! How are firmware and device driver different, as both control devices?
                  – Tim
                  Jun 20 '11 at 1:53












                • For devices like WLAN cards: Drivers are built to interface between a hardware device and the operating system itself. Drivers run on the PC. Firmware is built to interface between a hardware device and a driver over a bus (USB, IDE, PCI-E, etc). Firmware runs on the device itself.
                  – LawrenceC
                  Jun 20 '11 at 11:17















                up vote
                12
                down vote













                Traditionally, firmware is CPU code that resides on a unmodifiable ROM that is necessary for a hardware device to boot and load an operating system or a binary (software) of choice. Sometimes no choice of a binary is given and one attached to the boot-portion firmware is used.



                All CPUs have the classical problem in that, since they fetch instructions from memory, some sort of pre-programmed memory must exist at a fixed address when the CPU starts, so that it can do something automatically on startup. Firmware exists for this purpose. Some firmware also has code that later programs can use for services. BIOS firmware exposes many functions that DOS used for basic input and output (hence why BIOS stands for Basic Input Output System).



                The distinction is not totally clear. Some (most) WLAN cards require firmware to be loaded before they will start functioning. However, usually there is a tiny firmware on the device whose job is to do nothing but accept a main "firmware" over the USB bus when the device is started by the operating system, and hand over control when it is loaded. Most people would say all of it is firmware.



                Since EEPROMs and flash memory became more common, firmware usually no longer resides in an unwriteable ROM but in flash memory and can be modified. The distinction between firmware and software is blurry today with the advent of flash memory. However, one thing hasn't changed over the years and that is CPUs are still CPUs and require some code, or firmware, to be visible at startup to, well, start up.



                CPUs are in more devices than ever before so developing and allowing firmware to be updated in the case of bugs is a big deal now and many hardware devices with a CPU have firmware update interfaces, sometimes undocumented.



                A firmware can be used to load an OS. It can contain a boot loader or code that loads a boot loader. It is possible to store an OS image in the same location as firmware and let the boot-time code of firmware load the OS (cell phones do this). PC BIOSes as a rule do not include boot loaders. U-boot (not for PCs) is an example of a "filesystem-aware" firmware that does directly load an operating system.



                FIrmwares usually do not have all the features of a full operating system because of the principle that simpler is more reliable. The simplest firmwares simply initialize a minimum of hardware, load a sector or block off of a storage device and throw execution to it. This is simple to program and therefore easy to verify as bug free. Bugs in boot time firmware particularly can spell disaster for a device.






                share|improve this answer























                • Thanks! How are firmware and device driver different, as both control devices?
                  – Tim
                  Jun 20 '11 at 1:53












                • For devices like WLAN cards: Drivers are built to interface between a hardware device and the operating system itself. Drivers run on the PC. Firmware is built to interface between a hardware device and a driver over a bus (USB, IDE, PCI-E, etc). Firmware runs on the device itself.
                  – LawrenceC
                  Jun 20 '11 at 11:17













                up vote
                12
                down vote










                up vote
                12
                down vote









                Traditionally, firmware is CPU code that resides on a unmodifiable ROM that is necessary for a hardware device to boot and load an operating system or a binary (software) of choice. Sometimes no choice of a binary is given and one attached to the boot-portion firmware is used.



                All CPUs have the classical problem in that, since they fetch instructions from memory, some sort of pre-programmed memory must exist at a fixed address when the CPU starts, so that it can do something automatically on startup. Firmware exists for this purpose. Some firmware also has code that later programs can use for services. BIOS firmware exposes many functions that DOS used for basic input and output (hence why BIOS stands for Basic Input Output System).



                The distinction is not totally clear. Some (most) WLAN cards require firmware to be loaded before they will start functioning. However, usually there is a tiny firmware on the device whose job is to do nothing but accept a main "firmware" over the USB bus when the device is started by the operating system, and hand over control when it is loaded. Most people would say all of it is firmware.



                Since EEPROMs and flash memory became more common, firmware usually no longer resides in an unwriteable ROM but in flash memory and can be modified. The distinction between firmware and software is blurry today with the advent of flash memory. However, one thing hasn't changed over the years and that is CPUs are still CPUs and require some code, or firmware, to be visible at startup to, well, start up.



                CPUs are in more devices than ever before so developing and allowing firmware to be updated in the case of bugs is a big deal now and many hardware devices with a CPU have firmware update interfaces, sometimes undocumented.



                A firmware can be used to load an OS. It can contain a boot loader or code that loads a boot loader. It is possible to store an OS image in the same location as firmware and let the boot-time code of firmware load the OS (cell phones do this). PC BIOSes as a rule do not include boot loaders. U-boot (not for PCs) is an example of a "filesystem-aware" firmware that does directly load an operating system.



                FIrmwares usually do not have all the features of a full operating system because of the principle that simpler is more reliable. The simplest firmwares simply initialize a minimum of hardware, load a sector or block off of a storage device and throw execution to it. This is simple to program and therefore easy to verify as bug free. Bugs in boot time firmware particularly can spell disaster for a device.






                share|improve this answer














                Traditionally, firmware is CPU code that resides on a unmodifiable ROM that is necessary for a hardware device to boot and load an operating system or a binary (software) of choice. Sometimes no choice of a binary is given and one attached to the boot-portion firmware is used.



                All CPUs have the classical problem in that, since they fetch instructions from memory, some sort of pre-programmed memory must exist at a fixed address when the CPU starts, so that it can do something automatically on startup. Firmware exists for this purpose. Some firmware also has code that later programs can use for services. BIOS firmware exposes many functions that DOS used for basic input and output (hence why BIOS stands for Basic Input Output System).



                The distinction is not totally clear. Some (most) WLAN cards require firmware to be loaded before they will start functioning. However, usually there is a tiny firmware on the device whose job is to do nothing but accept a main "firmware" over the USB bus when the device is started by the operating system, and hand over control when it is loaded. Most people would say all of it is firmware.



                Since EEPROMs and flash memory became more common, firmware usually no longer resides in an unwriteable ROM but in flash memory and can be modified. The distinction between firmware and software is blurry today with the advent of flash memory. However, one thing hasn't changed over the years and that is CPUs are still CPUs and require some code, or firmware, to be visible at startup to, well, start up.



                CPUs are in more devices than ever before so developing and allowing firmware to be updated in the case of bugs is a big deal now and many hardware devices with a CPU have firmware update interfaces, sometimes undocumented.



                A firmware can be used to load an OS. It can contain a boot loader or code that loads a boot loader. It is possible to store an OS image in the same location as firmware and let the boot-time code of firmware load the OS (cell phones do this). PC BIOSes as a rule do not include boot loaders. U-boot (not for PCs) is an example of a "filesystem-aware" firmware that does directly load an operating system.



                FIrmwares usually do not have all the features of a full operating system because of the principle that simpler is more reliable. The simplest firmwares simply initialize a minimum of hardware, load a sector or block off of a storage device and throw execution to it. This is simple to program and therefore easy to verify as bug free. Bugs in boot time firmware particularly can spell disaster for a device.







                share|improve this answer














                share|improve this answer



                share|improve this answer








                edited Jun 20 '11 at 1:03

























                answered Jun 20 '11 at 0:53









                LawrenceC

                58.5k10101179




                58.5k10101179












                • Thanks! How are firmware and device driver different, as both control devices?
                  – Tim
                  Jun 20 '11 at 1:53












                • For devices like WLAN cards: Drivers are built to interface between a hardware device and the operating system itself. Drivers run on the PC. Firmware is built to interface between a hardware device and a driver over a bus (USB, IDE, PCI-E, etc). Firmware runs on the device itself.
                  – LawrenceC
                  Jun 20 '11 at 11:17


















                • Thanks! How are firmware and device driver different, as both control devices?
                  – Tim
                  Jun 20 '11 at 1:53












                • For devices like WLAN cards: Drivers are built to interface between a hardware device and the operating system itself. Drivers run on the PC. Firmware is built to interface between a hardware device and a driver over a bus (USB, IDE, PCI-E, etc). Firmware runs on the device itself.
                  – LawrenceC
                  Jun 20 '11 at 11:17
















                Thanks! How are firmware and device driver different, as both control devices?
                – Tim
                Jun 20 '11 at 1:53






                Thanks! How are firmware and device driver different, as both control devices?
                – Tim
                Jun 20 '11 at 1:53














                For devices like WLAN cards: Drivers are built to interface between a hardware device and the operating system itself. Drivers run on the PC. Firmware is built to interface between a hardware device and a driver over a bus (USB, IDE, PCI-E, etc). Firmware runs on the device itself.
                – LawrenceC
                Jun 20 '11 at 11:17




                For devices like WLAN cards: Drivers are built to interface between a hardware device and the operating system itself. Drivers run on the PC. Firmware is built to interface between a hardware device and a driver over a bus (USB, IDE, PCI-E, etc). Firmware runs on the device itself.
                – LawrenceC
                Jun 20 '11 at 11:17












                up vote
                3
                down vote













                The boundaries can be a little fuzzy.



                Software typically is any instructions or routine that a computer can do.



                Firmware is typically specific instructions (software) that are loaded in/on to hardware in order for them to perform their function.



                I would say that pretty much every piece of hardware has some sort of firmware included in it.



                Again, I do not think there is a definitive guide as to where one starts and stops - all what firmware is, is software which is compiled for whatever chip is in the device.



                As for your second question about what is firmware, I would say that bootloaders are not but the BIOS is and grub isn't.



                This is very hard to draw the line but... the way I look at it is that the BIOS (now EFI) is the firmware of the motherboard, and the Hard drive has it's own firmware.



                So, the bootloader/grub is pure software - it may do tasks with the hard drive, but it is not directly actually controlling any hardware.



                If you take an embedded device such as an Iphone/Ipad, where does the firmware end and software begin!? If you consider IOS to be firmware, then why not Windows or similar.



                To me, this shows that the boundaries are where the manufacturers or vendors of any device allow you to take control and it is not actually a fixed thing/exact science.



                For example,




                • A motherboard is for booting - the firmware is the BIOS, when it hands over to the next part

                • The optical and hard drives are components for reading/writing data, the firmware is the part that does this job upon request.

                • The graphics card is a component for displaying graphics, the firmware is the part that upon request draws output.


                To complicate further - when I say upon request, this can be from a driver within other software



                Now, an Ipad, or an Iphone, or any other embedded device...




                • A device that is bought off the shelf to perform a limited function (e.g run IOS) is the firmware as you do not (or should not) manually modify it. It may contain other pieces of hardware inside, but it is presented as one device and you do not purchase the hardware separately, there by, any update available will update everything invisibly (e.g. a phone, you do not manually update the GSM controller, power variables and more, you just have an update that may modify these things).


                So.... To sum up...



                For me, I would say that firmware = the software that comes on devices where as pure software is purchased as data, but I am sure others may say different!






                share|improve this answer





















                • I hope this reads ok... I found this a very interesting topic to write about, but it took me over half an hour and it is very early in the morning/I am very tired... and I am not always clear at the best of times! ... Happy to answer questions and I just hope I didn't repeat myself too much!
                  – William Hilsum
                  Jun 20 '11 at 0:46










                • Good morning! Thank you so much!
                  – Tim
                  Jun 20 '11 at 0:47















                up vote
                3
                down vote













                The boundaries can be a little fuzzy.



                Software typically is any instructions or routine that a computer can do.



                Firmware is typically specific instructions (software) that are loaded in/on to hardware in order for them to perform their function.



                I would say that pretty much every piece of hardware has some sort of firmware included in it.



                Again, I do not think there is a definitive guide as to where one starts and stops - all what firmware is, is software which is compiled for whatever chip is in the device.



                As for your second question about what is firmware, I would say that bootloaders are not but the BIOS is and grub isn't.



                This is very hard to draw the line but... the way I look at it is that the BIOS (now EFI) is the firmware of the motherboard, and the Hard drive has it's own firmware.



                So, the bootloader/grub is pure software - it may do tasks with the hard drive, but it is not directly actually controlling any hardware.



                If you take an embedded device such as an Iphone/Ipad, where does the firmware end and software begin!? If you consider IOS to be firmware, then why not Windows or similar.



                To me, this shows that the boundaries are where the manufacturers or vendors of any device allow you to take control and it is not actually a fixed thing/exact science.



                For example,




                • A motherboard is for booting - the firmware is the BIOS, when it hands over to the next part

                • The optical and hard drives are components for reading/writing data, the firmware is the part that does this job upon request.

                • The graphics card is a component for displaying graphics, the firmware is the part that upon request draws output.


                To complicate further - when I say upon request, this can be from a driver within other software



                Now, an Ipad, or an Iphone, or any other embedded device...




                • A device that is bought off the shelf to perform a limited function (e.g run IOS) is the firmware as you do not (or should not) manually modify it. It may contain other pieces of hardware inside, but it is presented as one device and you do not purchase the hardware separately, there by, any update available will update everything invisibly (e.g. a phone, you do not manually update the GSM controller, power variables and more, you just have an update that may modify these things).


                So.... To sum up...



                For me, I would say that firmware = the software that comes on devices where as pure software is purchased as data, but I am sure others may say different!






                share|improve this answer





















                • I hope this reads ok... I found this a very interesting topic to write about, but it took me over half an hour and it is very early in the morning/I am very tired... and I am not always clear at the best of times! ... Happy to answer questions and I just hope I didn't repeat myself too much!
                  – William Hilsum
                  Jun 20 '11 at 0:46










                • Good morning! Thank you so much!
                  – Tim
                  Jun 20 '11 at 0:47













                up vote
                3
                down vote










                up vote
                3
                down vote









                The boundaries can be a little fuzzy.



                Software typically is any instructions or routine that a computer can do.



                Firmware is typically specific instructions (software) that are loaded in/on to hardware in order for them to perform their function.



                I would say that pretty much every piece of hardware has some sort of firmware included in it.



                Again, I do not think there is a definitive guide as to where one starts and stops - all what firmware is, is software which is compiled for whatever chip is in the device.



                As for your second question about what is firmware, I would say that bootloaders are not but the BIOS is and grub isn't.



                This is very hard to draw the line but... the way I look at it is that the BIOS (now EFI) is the firmware of the motherboard, and the Hard drive has it's own firmware.



                So, the bootloader/grub is pure software - it may do tasks with the hard drive, but it is not directly actually controlling any hardware.



                If you take an embedded device such as an Iphone/Ipad, where does the firmware end and software begin!? If you consider IOS to be firmware, then why not Windows or similar.



                To me, this shows that the boundaries are where the manufacturers or vendors of any device allow you to take control and it is not actually a fixed thing/exact science.



                For example,




                • A motherboard is for booting - the firmware is the BIOS, when it hands over to the next part

                • The optical and hard drives are components for reading/writing data, the firmware is the part that does this job upon request.

                • The graphics card is a component for displaying graphics, the firmware is the part that upon request draws output.


                To complicate further - when I say upon request, this can be from a driver within other software



                Now, an Ipad, or an Iphone, or any other embedded device...




                • A device that is bought off the shelf to perform a limited function (e.g run IOS) is the firmware as you do not (or should not) manually modify it. It may contain other pieces of hardware inside, but it is presented as one device and you do not purchase the hardware separately, there by, any update available will update everything invisibly (e.g. a phone, you do not manually update the GSM controller, power variables and more, you just have an update that may modify these things).


                So.... To sum up...



                For me, I would say that firmware = the software that comes on devices where as pure software is purchased as data, but I am sure others may say different!






                share|improve this answer












                The boundaries can be a little fuzzy.



                Software typically is any instructions or routine that a computer can do.



                Firmware is typically specific instructions (software) that are loaded in/on to hardware in order for them to perform their function.



                I would say that pretty much every piece of hardware has some sort of firmware included in it.



                Again, I do not think there is a definitive guide as to where one starts and stops - all what firmware is, is software which is compiled for whatever chip is in the device.



                As for your second question about what is firmware, I would say that bootloaders are not but the BIOS is and grub isn't.



                This is very hard to draw the line but... the way I look at it is that the BIOS (now EFI) is the firmware of the motherboard, and the Hard drive has it's own firmware.



                So, the bootloader/grub is pure software - it may do tasks with the hard drive, but it is not directly actually controlling any hardware.



                If you take an embedded device such as an Iphone/Ipad, where does the firmware end and software begin!? If you consider IOS to be firmware, then why not Windows or similar.



                To me, this shows that the boundaries are where the manufacturers or vendors of any device allow you to take control and it is not actually a fixed thing/exact science.



                For example,




                • A motherboard is for booting - the firmware is the BIOS, when it hands over to the next part

                • The optical and hard drives are components for reading/writing data, the firmware is the part that does this job upon request.

                • The graphics card is a component for displaying graphics, the firmware is the part that upon request draws output.


                To complicate further - when I say upon request, this can be from a driver within other software



                Now, an Ipad, or an Iphone, or any other embedded device...




                • A device that is bought off the shelf to perform a limited function (e.g run IOS) is the firmware as you do not (or should not) manually modify it. It may contain other pieces of hardware inside, but it is presented as one device and you do not purchase the hardware separately, there by, any update available will update everything invisibly (e.g. a phone, you do not manually update the GSM controller, power variables and more, you just have an update that may modify these things).


                So.... To sum up...



                For me, I would say that firmware = the software that comes on devices where as pure software is purchased as data, but I am sure others may say different!







                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered Jun 20 '11 at 0:45









                William Hilsum

                108k16159249




                108k16159249












                • I hope this reads ok... I found this a very interesting topic to write about, but it took me over half an hour and it is very early in the morning/I am very tired... and I am not always clear at the best of times! ... Happy to answer questions and I just hope I didn't repeat myself too much!
                  – William Hilsum
                  Jun 20 '11 at 0:46










                • Good morning! Thank you so much!
                  – Tim
                  Jun 20 '11 at 0:47


















                • I hope this reads ok... I found this a very interesting topic to write about, but it took me over half an hour and it is very early in the morning/I am very tired... and I am not always clear at the best of times! ... Happy to answer questions and I just hope I didn't repeat myself too much!
                  – William Hilsum
                  Jun 20 '11 at 0:46










                • Good morning! Thank you so much!
                  – Tim
                  Jun 20 '11 at 0:47
















                I hope this reads ok... I found this a very interesting topic to write about, but it took me over half an hour and it is very early in the morning/I am very tired... and I am not always clear at the best of times! ... Happy to answer questions and I just hope I didn't repeat myself too much!
                – William Hilsum
                Jun 20 '11 at 0:46




                I hope this reads ok... I found this a very interesting topic to write about, but it took me over half an hour and it is very early in the morning/I am very tired... and I am not always clear at the best of times! ... Happy to answer questions and I just hope I didn't repeat myself too much!
                – William Hilsum
                Jun 20 '11 at 0:46












                Good morning! Thank you so much!
                – Tim
                Jun 20 '11 at 0:47




                Good morning! Thank you so much!
                – Tim
                Jun 20 '11 at 0:47










                up vote
                3
                down vote














                1. The difference is basically in where the code resides. Generally, firmware is burned into some kind of EPROM or embedded flash memory, whereas software is stored on a mass stroage device.


                2. The OS of a device may reside in firmware or software. On a PC the firmware (BIOS), just provides low level services that a Software OS (Windows/Linux/etc) can make use of. In mobile devices the entrie OS is generally in firmware.


                3. By the definition in (1) the computer's BIOS is firmware, but bootloaders, which reside on the hard-disk are software.







                share|improve this answer

























                  up vote
                  3
                  down vote














                  1. The difference is basically in where the code resides. Generally, firmware is burned into some kind of EPROM or embedded flash memory, whereas software is stored on a mass stroage device.


                  2. The OS of a device may reside in firmware or software. On a PC the firmware (BIOS), just provides low level services that a Software OS (Windows/Linux/etc) can make use of. In mobile devices the entrie OS is generally in firmware.


                  3. By the definition in (1) the computer's BIOS is firmware, but bootloaders, which reside on the hard-disk are software.







                  share|improve this answer























                    up vote
                    3
                    down vote










                    up vote
                    3
                    down vote










                    1. The difference is basically in where the code resides. Generally, firmware is burned into some kind of EPROM or embedded flash memory, whereas software is stored on a mass stroage device.


                    2. The OS of a device may reside in firmware or software. On a PC the firmware (BIOS), just provides low level services that a Software OS (Windows/Linux/etc) can make use of. In mobile devices the entrie OS is generally in firmware.


                    3. By the definition in (1) the computer's BIOS is firmware, but bootloaders, which reside on the hard-disk are software.







                    share|improve this answer













                    1. The difference is basically in where the code resides. Generally, firmware is burned into some kind of EPROM or embedded flash memory, whereas software is stored on a mass stroage device.


                    2. The OS of a device may reside in firmware or software. On a PC the firmware (BIOS), just provides low level services that a Software OS (Windows/Linux/etc) can make use of. In mobile devices the entrie OS is generally in firmware.


                    3. By the definition in (1) the computer's BIOS is firmware, but bootloaders, which reside on the hard-disk are software.








                    share|improve this answer












                    share|improve this answer



                    share|improve this answer










                    answered Jun 20 '11 at 0:46









                    Andrew Cooper

                    1,214716




                    1,214716






















                        up vote
                        3
                        down vote













                        Firmware is software, except instead of being stored on disk, it is stored in an EEPROM which is usually flashable to allow updates.



                        Firmware is in a way an operating system, but much more restrictive and single-purposed because it is only for controlling that device, whereas an OS is a general-purpose system that allows any kind of software to be run on multiple hardware devices.



                        No, boot-loaders are not firmware because they are software that exists on the disk. Yes, the BIOS is because it exists on a (flashable) chip. No, GRUB is not firmware either because, again it is not firm (there is no hardware component to it), it is software that exists on disk—though it could (and may) be installed on a chip, in which case it would be firmware.






                        share|improve this answer

























                          up vote
                          3
                          down vote













                          Firmware is software, except instead of being stored on disk, it is stored in an EEPROM which is usually flashable to allow updates.



                          Firmware is in a way an operating system, but much more restrictive and single-purposed because it is only for controlling that device, whereas an OS is a general-purpose system that allows any kind of software to be run on multiple hardware devices.



                          No, boot-loaders are not firmware because they are software that exists on the disk. Yes, the BIOS is because it exists on a (flashable) chip. No, GRUB is not firmware either because, again it is not firm (there is no hardware component to it), it is software that exists on disk—though it could (and may) be installed on a chip, in which case it would be firmware.






                          share|improve this answer























                            up vote
                            3
                            down vote










                            up vote
                            3
                            down vote









                            Firmware is software, except instead of being stored on disk, it is stored in an EEPROM which is usually flashable to allow updates.



                            Firmware is in a way an operating system, but much more restrictive and single-purposed because it is only for controlling that device, whereas an OS is a general-purpose system that allows any kind of software to be run on multiple hardware devices.



                            No, boot-loaders are not firmware because they are software that exists on the disk. Yes, the BIOS is because it exists on a (flashable) chip. No, GRUB is not firmware either because, again it is not firm (there is no hardware component to it), it is software that exists on disk—though it could (and may) be installed on a chip, in which case it would be firmware.






                            share|improve this answer












                            Firmware is software, except instead of being stored on disk, it is stored in an EEPROM which is usually flashable to allow updates.



                            Firmware is in a way an operating system, but much more restrictive and single-purposed because it is only for controlling that device, whereas an OS is a general-purpose system that allows any kind of software to be run on multiple hardware devices.



                            No, boot-loaders are not firmware because they are software that exists on the disk. Yes, the BIOS is because it exists on a (flashable) chip. No, GRUB is not firmware either because, again it is not firm (there is no hardware component to it), it is software that exists on disk—though it could (and may) be installed on a chip, in which case it would be firmware.







                            share|improve this answer












                            share|improve this answer



                            share|improve this answer










                            answered Jun 20 '11 at 0:48









                            Synetech

                            56.9k29184317




                            56.9k29184317






















                                up vote
                                0
                                down vote













                                I want to give an answer in just only a few words.firmware and operating system both of them is very important for any digital system to start up and run properly and we will discuss how these both works. Suppose we have switched off our smartphone and we switch on after switching the power button in our smartphone this command will go to BIOS chip which is a non-volatile memory and containing some programme of firmware.this bios chip firmware start working and firmware give command in both directions to RAM and ROM it gives command ram to take off operating system codes from Rom and another command to ROM to give a copy of his operating system to RAM to active all other components of that System.






                                share|improve this answer

























                                  up vote
                                  0
                                  down vote













                                  I want to give an answer in just only a few words.firmware and operating system both of them is very important for any digital system to start up and run properly and we will discuss how these both works. Suppose we have switched off our smartphone and we switch on after switching the power button in our smartphone this command will go to BIOS chip which is a non-volatile memory and containing some programme of firmware.this bios chip firmware start working and firmware give command in both directions to RAM and ROM it gives command ram to take off operating system codes from Rom and another command to ROM to give a copy of his operating system to RAM to active all other components of that System.






                                  share|improve this answer























                                    up vote
                                    0
                                    down vote










                                    up vote
                                    0
                                    down vote









                                    I want to give an answer in just only a few words.firmware and operating system both of them is very important for any digital system to start up and run properly and we will discuss how these both works. Suppose we have switched off our smartphone and we switch on after switching the power button in our smartphone this command will go to BIOS chip which is a non-volatile memory and containing some programme of firmware.this bios chip firmware start working and firmware give command in both directions to RAM and ROM it gives command ram to take off operating system codes from Rom and another command to ROM to give a copy of his operating system to RAM to active all other components of that System.






                                    share|improve this answer












                                    I want to give an answer in just only a few words.firmware and operating system both of them is very important for any digital system to start up and run properly and we will discuss how these both works. Suppose we have switched off our smartphone and we switch on after switching the power button in our smartphone this command will go to BIOS chip which is a non-volatile memory and containing some programme of firmware.this bios chip firmware start working and firmware give command in both directions to RAM and ROM it gives command ram to take off operating system codes from Rom and another command to ROM to give a copy of his operating system to RAM to active all other components of that System.







                                    share|improve this answer












                                    share|improve this answer



                                    share|improve this answer










                                    answered Nov 27 at 7:43









                                    Hritik Nitish

                                    1




                                    1






























                                        draft saved

                                        draft discarded




















































                                        Thanks for contributing an answer to Super User!


                                        • Please be sure to answer the question. Provide details and share your research!

                                        But avoid



                                        • Asking for help, clarification, or responding to other answers.

                                        • Making statements based on opinion; back them up with references or personal experience.


                                        To learn more, see our tips on writing great answers.





                                        Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


                                        Please pay close attention to the following guidance:


                                        • Please be sure to answer the question. Provide details and share your research!

                                        But avoid



                                        • Asking for help, clarification, or responding to other answers.

                                        • Making statements based on opinion; back them up with references or personal experience.


                                        To learn more, see our tips on writing great answers.




                                        draft saved


                                        draft discarded














                                        StackExchange.ready(
                                        function () {
                                        StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f299391%2fwhat-are-the-differences-between-firmware-and-software-os%23new-answer', 'question_page');
                                        }
                                        );

                                        Post as a guest















                                        Required, but never shown





















































                                        Required, but never shown














                                        Required, but never shown












                                        Required, but never shown







                                        Required, but never shown

































                                        Required, but never shown














                                        Required, but never shown












                                        Required, but never shown







                                        Required, but never shown







                                        Popular posts from this blog

                                        Plaza Victoria

                                        Puebla de Zaragoza

                                        Musa