I'm a high school teacher and I recently was discussing this. Protip: don't talk to 14 year olds about how if something is in between hard and soft, it's firm. 🙄
post
Firmware is just software that runs in a different place.
Source: me, I write firmware sometimes at work.
Well, it's usually closer to the hardware though. Your average x86/64 software dev doesn't have to struggle with pins, addresses, buses and timings that much, if at all.
Mind? Blown.
Hotel? Trivago
Wait... It's not "firm" as in "company that made the stuff"? FIRMware = the official software a firm pushes to patch things they make
By the way, "joystick" was kinda rude back in the day, but nobody even notices now.
What was more acceptable? "Control stick"?
No, "joystick" was the original term. Everyone in the past were a bunch of perverts.
Disco stick, as in
"Let's have some fun, this beat is sick / I wanna take a ride on your disco stick."
Damn… I always thought it meant the “firm” putting their “ware” on the chips. 😂
TIL! I have never even wondered why it is called that. Just took it as a fact and went along with it.
Anyone remember shareware?
200+ Shareware games on a CD, played the shit outta those. And they came in magazines or were given out completely free.
I believe demos for games should still be the norm.
Then there's wetware (people).
I miss some of the older ones from my college days (1990s).. million logical instructions per second (megalips), and measuring mouse speed in mickeys/pixel.
Extra firmware cannot be modified.
Firm firmware might be able to be modified, but documentation is largely unknown.
Silken firmware is easily modified by the user.
These names are taken from tofu packaging.
My non-tech wife tried to tell me “obviously that’s why it’s called that” when I’ve been writing software (and even some minor firmware hacking) for 30 years.
Is this the real life?
Can someone ELI5 what firmware actually is though? I kind of knew it was half way between, but i don’t know what that looks like.
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.
It's software that lives in the hardware. It provides low-level control and functionality specific to that device. It runs on the hardware itself, not the CPU of the computer.
For example, a hard drive. We don't want the OS to have to know how to interact with every type of hard drive. Seagate does things differently than Western Digital, an SSD works very different than a hard drive, etc.. The OS sends the same commands to all types of hard drives, but each hard drive needs to know how to actually comply with the commands. If the OS is asking for a dozen different files all over the drive, it would be dumb to try and read them all at the same time. The OS doesn't really know where they are on the spinning disk, but the drive does. Firmware written specifically for the device can do a much better job planing how to fetch the data so the read head doesn't need to go back and forth a bunch of times, but instead make one good pass fetching all the data as it comes to it.
Hope that helps.
Started computer science in grade school with only an hour of actual computer time a week. A LOT of theory and history. Charles Babbage, Ada, ENIAC, etc.
This stuff was drilled into our heads. Same with bit, byte and, halfway between bit and byte, a nibble. It's a thing. 4 bits is a nibble.
Funny enough, I couldn't code to save my life now.
I think most people get it intuitively without thinking too much about it.
It's software that is tied to the hardware, in the old days most commonly on ROM, which makes it "firm".
Also as many mention, it's tied to the hardware by the "firm" that made the hardware, although I think that is more accidental, it kind of works for the logic too IMO.
It's such a brilliant term that most people generally have an intuitive idea about what it means, without an actual explanation. Today though it's a bit more murky where the line is drawn between software and firmware, since much firmware is distributed through the OS and Drivers, and can be changed on the fly.
Rule of thumb: Firmware is essentially software that can break the hardware if something goes wrong.
I thought this was common knowledge. I distinctly remember this being taught in a basic high school computing class back in the 90’s.
Like Tofu. Mind blown
Firmware is the Hardware of Software
I've always thought of it more as the software of hardware.
The entire foundation of my life is built on quicksand.

top 50 comments