• fuzzybee@lemm.ee
    link
    fedilink
    English
    arrow-up
    63
    ·
    1 year ago

    Hardware is the physical part of computer.

    Software is the code that runs on the computer to do the thing you want to do.

    Firmware is the code that is installed on the hardware itself, usually in some sort of permanent or semi-permanent memory to make the hardware work.

      • Kept7963@lemmy.world
        link
        fedilink
        English
        arrow-up
        10
        ·
        1 year ago

        Say you have your display, this is made up of millions of lights that on their own just light up in whatever single colour you want, but together they light up to create an image.

        Your software takes care of breaking down that image of a cat you want to look at into its corresponding pixels - with a value for colour and brightness.

        For example it’ll say this area in the cat’s eye is black, so it’ll request the no light to come out of it. Another area might be a pale red so it’ll request red with some middle level of brightness.

        Now your firmware takes that requested black for a specific Pixel and it’ll physically cut power to switch off all the lights in the required area. For the pale red it’ll power that the red ligh ON with hald power, whilst green and blue are OFF.

        (things get more complex once you consider back-lightning)

      • whaleross@lemmy.world
        link
        fedilink
        English
        arrow-up
        5
        ·
        edit-2
        1 year ago

        Firmware is software that makes the hardware do what it is supposed to do that runs on the hardware itself.

        The term is used somewhat ambiguously though.

        • Sometimes it is just the pure functionality, “if button is pressed, flip the lights on/off”.
        • Sometimes it glues communication with the functionality, “if signal is received over some interface, flip the lights on/off”.
        • Sometimes it has an operating system, “when power is on, initiate communications with hardware and interfaces and load software if it is present to interact with any of these”.
        • Sometimes it is a package with both operating system and software, “when power is on, initiate communications with hardware and interfaces and load software that I know is present”.
        • Sometimes the OS and/or software in the firmware package has a helpful front facing user interface.