Spyke
lemm.ee

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. 🙄

244
lemmy.world

There’s a surprisingly more expansive demographic that pro tip applies to.

109

I'm 41f (going on 13 at times), and this is why my husband hates(loves) having me around the shop - all the mechanical everything is full of euphemisms and innuendo. "mating surfaces" 😂

34
Deezreply
lemm.ee

I think yes, let’s make a new culture of restrained emoji use 🙌

13
ramplayreply
lemmy.ca

Oh were they referring to praise hands? I thought they meant 🙋

6
Deezreply
lemm.ee

I was high fiving their raised hand

4
lorezreply

The Breakfast Club fist pump. There should be a dedicated emoji for that.

2

Yeah, that tip is applicable for a lot of people who understand what sex is, this isn't something that really goes away with age in a lot of cases.

6
kogreply
lemmy.world

I feel like you should really have seen that one coming.

16

I had a physics teacher who measured something against his hand in front of class and started to say, "You should try to..." then stopped before telling us he almost said "you should try to use your body to measure whenever possible" but stopped because he remembered he was talking to a room full of high schoolers.

2
kog
lemmy.world

Firmware is just software that runs in a different place.

Source: me, I write firmware sometimes at work.

87
Dnnreply
lemmy.world

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.

26
Nuuskis9reply
feddit.nl

I''d like to know that where spyware is located?

11

Firmware is just software that runs in a different place.

Like in the kitchen?

Jk

5
lemmy.world

Wait... It's not "firm" as in "company that made the stuff"? FIRMware = the official software a firm pushes to patch things they make

46
Nailbarreply
sopuli.xyz

This was my assumption too, but I like this description better.

6
lemmy.world

By the way, "joystick" was kinda rude back in the day, but nobody even notices now.

43
fuboreply
lemmy.world

No, "joystick" was the original term. Everyone in the past were a bunch of perverts.

40
fuboreply
lemmy.world

It was named by pilots. It's in the, um, cockpit.

6
lorezreply

Nowadays it's analog stick, where did all the joy go, I say?

2
axtualdavereply
lemmy.world

Disco stick, as in

"Let's have some fun, this beat is sick / I wanna take a ride on your disco stick."

18
FightMilkreply
lemmy.world

Wikipedia seems to suggest it was an original term, first recorded use in 1909, and mentions nothing about alternative terms or controversy. I call BS

5

He means rude as in people made a sexual innuendo out of it.

I remember in late 90s my brother bought a joystick. The brand was ThrustMaster. Literally, that was the name. ThrustMaster Joystick.

We still laugh about it sometimes.

4

TIL! I have never even wondered why it is called that. Just took it as a fact and went along with it.

42
feddit.nl

Damn… I always thought it meant the “firm” putting their “ware” on the chips. 😂

41
Rodeoreply
lemmy.ca

It's not software for the BIOS, it is the BIOS.

2
Endsreply
feddit.de

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.

18
J.M.reply
lemmy.ca

And they arrived (because I don’t want to use ‘came’ given this thread already) on cereal boxes.

3
Endsreply
feddit.de

I had never heard of that around here (Germany). Got my first PC '99, so I should have noticed; was looking everywhere for cheap Software deals. But there were some other companies which gave out free CD-ROMs as advertising with shareware and demo games. Some of those games were never finished, lol.

The Internet Archive has those Nestlé CDs btw :)

4
J.M.reply
lemmy.ca

Happened in Canada for sure. The post made me go dig through boxes in the basement and try to remember where my old cdrom drive and cable that would connect to a new Mac would be found. Good times and worth it.

1

Got no "vintage" hardware sadly. In a VM it's not the same. I still have a Floppy drive, but those disks were all corrupted eons ago. I wonder how long my heaps of gamer magazine and bundle-box (bought at Aldi for practically nothing ^_^) CDs are still gonna last...

They were the best of times, that's for sure!

2
WarmSodareply
lemm.ee

I think demos are coming back. I have a bunch on steam recently, and Nintendo has a ton of them on thier storefront.

3

That's good news. I hope that trend persists then.

2

I got malware in my wetware and had to change my underwear

7
Odoreply
lemmy.world

Oh man, Doom. Getting 1/3 of the whole game was incredible. Also Deus Ex years later. Some people hated the Ellis Island level, but I spent so much time exploring everywhere.

6

I fucked around so long that I failed the mission. It gave a prompt that I had 17 minutes left to do the last thing, and ran out by 20 seconds or sth.

Gotta give that game a whirl again soon, with proper textures & mods & fool around with ReShade for hours until my back hurts and I gotta lay down after an hour of actual gameplay, muhaha.

1
lemmy.hoyle.me.uk

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.

27
lemmy.world

With the advent of lab grown animal neurons interfacing with parts, we need to expand the definition of "wetware".

It's meat. Doesn't even need to be people meat. Just meat that can be trained to react to stimuli, which opens up some options depending on complexity.

3

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.

26
infosec.pub

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?

25
lemm.ee

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.

24
fuzzybeereply
lemm.ee

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.

74
Kept7963reply
lemmy.world

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)

10
whalerossreply
lemmy.world

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.
5

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.

18
Andojusreply
lemmy.world

FIRMware is SOFTware (code) that contains the instructions to run HARDware. In most cases you would experience it, hardware is running an OS (Operating System) which manages all of the firmware ‘packages’. Many electronics, particularly more sophisticated, have firmware that is directly loaded onto the device which has a proprietary OS with limited to no graphical interface.

I am a layperson so if an expert can weigh in on my take I’d appreciate it!

10

Firmware doesn't run on an OS, you're probably thinking of drivers which are different. Drivers are software that tell the OS how to interact with specific hardware.

Firmware is software that's baked into specific hardware components and it exists outside of the OS. A visible example most people are familiar with would be the BIOS which is firmware for the motherboard. Hard drives, graphics cards, RAM, etc all also have their own firmware.

Other devices such as microwaves, washing machines, cars, or anything using microprocessors (so pretty much everything these days) also have components with their own firmware. It is true that device firmware can drive a UI on some devices such a as a microwave, but most people today wouldn't consider that to be an OS (semantics, I know).

14

Yeah, nah...read the other reply. The comment you are replying to is a swing and miss.

5

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.

23
reddthat.com

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.

23
evranchreply
lemmy.ca

Nibbles are still a thing in embedded programming and in ultra low bandwidth comms like LoRa. For example you can pack 2 BCD digits into a byte, one for the high nibble and one for the low nibble. This results in the hex representation of the byte actually being directly readable as the two digits, which is convenient.

Datasheet for sensors will sometimes reference nibbles as well, often for status bits on protocols like Onewire where every bit counts. i.e low nibble contains a state value 0-15 and high nibble contains individual alarm flags.

8
phxreply

Nibbles can also be used with image types that are less than 8-bit

5
lemmy.world

QBasic came with NIBBLES.BAS, a snake game using text-mode characters as "pixels". Specifically it faked a 80x50 "pixel" grid using the standard 80x25 text screen where each 8-bit (=1 byte) text character made up two monochrome pixels using ▄ or ▀ or █ or an empty space.

I assume the name derived from the fact that, in a way, one pixel was "using half a byte", i. e. a nibble.

5

Such good memories of learning to code as a kid in QBasic, I remember NIBBLES.BAS.

I was totally spoiled as my dad had the professional paid version which had an incredible IDE for the time and things like user defined types and structs that I later found out weren't usually part of BASIC. It also had a ton of fancy graphics modes, double buffering, and even a sprite library. I loved playing around making crappy games.

3
lemmy.ml

Rule of thumb: Firmware is essentially software that can break the hardware if something goes wrong.

22

I always think of it as software that's saved on the hardware. But I guess technically all software is saved on hardware, but firmware is saved on hardware that's different from the hardware you normally save it on.

But maybe your definition is better.

2
lemmy.world

I thought this was common knowledge. I distinctly remember this being taught in a basic high school computing class back in the 90’s.

21
midwest.social

So in the 90s I had different computer based classes in high school.

There was a "computers" class, which is probably the closest to what you're talking about, in which we mostly learned how to use Microsoft Works.

I also was fortunate enough to have some programming classes. We started out with QBasic and then the more advanced level was visual basic.

None of these discussed firmware. If it came up at all it was probably a casual side conversation because someone bricked something trying to update it.

4
lemmy.world

We started out with QBasic and then the more advanced level was visual basic.

fun times with gorilla.bas? :)

2
midwest.social

I did have a classmate try to replicate Simon in QBasic but he kept needing the input reversed.

I told him the "feature not a bug" line and suggested he call it NOMIS

2
lemmy.world

Had to look that up - seen it before but never played. Sorry for the late reaction, lemmy.world had enough server problems that I didn't see my notifications in > 2 weeks...

2
midwest.social

No worries. Lemmy feels way more casual than Reddit anyway and I got notifications for months old comments there from time to time

1
lemmy.world

Now if only I could find a way to open - from my notification about your response - your comment in the context of the community - but on my own instance. I have tried clicking on "Show context" -> links to the home server of the community, where I can not post / respond. Clicking anywhere else:

  • Username: takes me to your profile
  • Community: takes me to my instance's view of the community in which we are communicating
  • Post name: takes me to my instance's view of the thread in which we are communicating, but of course without context to the comment
  • link symbol: does nothing
  • Show context: see above, takes me to the correct place, on the wrong instance
  • Timestamp: does nothing

:(

Anyways, I like lemmy a lot, but I think with the recent nasty defederation announcement at lemmy.world from hexbear I'll have to find another instance as home...

1

FWIW I home at midwest.social. It's not strictly for the Midwest US but you'll see a lot of stuff for that region there. It's also left leaning and I think the only instances they've defederated so far have been for extremism.

I'm also using jerboa on my phone and from my inbox there's a speech bubble button which lets me make this response from my inbox.

I don't know if either of these things will help you but I figured I'd offer them just in case they did.

1
Chaillesreply
lemmy.world

Oh. For a second there I thought it was going to be like "Tofu only refers to a specific kind of compressed soybean and you've got other variants like 'Sofu', 'Kofu', and 'Tafu'".

Surely, I can't be the only one where that came to mind?

15

I thought they were gonna be like “Tofu is the opposite of fromfu”

21
SatyrSackreply
lemmy.one

This implies the existence of silkenware as well as hard tofu.

4
Selmafuddreply
lemmy.world

Tofu is nothing more than a vessel for sauce, its only as good as what's on it

3
jantinreply
lemmy.world

Tell me you eat shitty meat without telling you eat shitty meat

5
Druidreply
lemmy.zip

I take that fucker straight out the packaging and eat it raw

2
WarmSodareply
lemm.ee

No way. I've had it. High school gf mother would make for dinner when I went over. Ugh

-5

Proper Tofu, smoked. Press the water out, dice, shake in a bag with oil, sesame and flour, then stir-fry. Try that, just one more time (ofc you don't have to), with matching sides, and see how you like that. Can be quite not-so-bad.

But I can understand that you don't like it!

2
lemmy.world

It's all one big layers system.

For sake of example let's take a GPU.

You have the hardware itself, which is rather static and non-changeable after it was manufactured.

Then the firmware is the software that runs inside the card itself in some dedicated chip with interface to control that hardware. It is programmable and replaceable.

Then the driver is the software that runs on the OS, and acts as an interface for other softwares that run on the same OS to talk to if they want to use the GPU. The driver would use the interface that the firmware exposes. Since each OS has a different way of writing hardware interfaces drivers are written for a specific OS.

Then you have software like DirectX or OpenGL that provide yet another standardized interface, only this time between different manufacturers like NVidia, AMD, Intel, etc to talk to supported GPU drivers.

Then you would have the software itself, like a game engine, video player, whatever.

14

This is the most accurate description in this thread so far. You're just missing bootcode, which is more like the step between hardware and software mentioned in the OP. It's functionally like software (written in assembly and/or a programming language like C, compiled, assembled, and linked into an executable), but it's stored in a ROM, which makes it like hardware. Unless there's a patching system built in to the bootcode, you can't modify it without a respin of the hardware (which is expensive and time consuming).

The microprocessor (mp) it runs on is hard-coded to load bootcode's entry point when the mp is brought out of hard reset, and the code itself does the essential initialization of the SoC. It can handle things like enabling performance features, setting up default interrupt handlers, training links, bringing various other parts of the chip out of hard reset, repairing internal SRAM, setting up the chip to properly handle the parts that are and aren't fused off, etc. Once it finishes, it starts the bios on CPUs (which is basically the bootcode for the motherboard, though it isn't hard-coded but usually stored in a flash chip so it can be updated), or if it's an embedded mp it can start firmware or just wait for an interrupt.

The bios sets up the motherboard and then starts the bootloader, which is located on a boot partition of a storage drive. The bootloader will then select and start the OS, which loads the drivers and provides the framework for software to find the relevant ones.

5

Drivers are both firmware to make the hardware (video cards, etc.) operate more efficiently and software for the rest of your operating system to more efficiently work with the hardware.

3
lemmy.world

What the hell!

How did I understand that just now?

14
lemmy.world

possibly because a "firm" is also a word for a business / company, so "firmware" as the chipset software coming from the firm that manufactures said chipset makes perfect sense. at least that's why I never sought an alternate explanation - and I am not fully convinced OP is right, actually.

0
boonhetreply
lemm.ee

But firmware doesn't have to be from the firm that manufacturers said chipset. Third party firmware is a common thing.

3

see that's something that makes perfect sense but that I wasn't actually aware of... Sorry for the late reaction, lemmy.world had enough server problems that I didn't see my notifications in > 2 weeks...

1
lemmy.world

"Firmware" is a terrible name, it's exactly software.

10
Shikadireply
wirebase.org

I disagree. Firmware originally referred to things in ROM or EEPROM. Basically software that is firmly in place and doesn't change, providing an abstraction layer between the hardware and software.

16
tabularreply
lemmy.world

This treats the software as if it were a physical chip which can't be practically changed due to the physics of microchips. The imutability of the storage medium is just a choice of the manufacturer. Sometimes this is a good cost saving feature and sometimes this so they can include anti-features such as preventing repairing your device (e.g. OneWheel).

0
Shikadireply
wirebase.org

I'm just telling you where the word comes from. It's like floppy disks, the 3.5mm ones weren't floppy but that's still what we called them because they once were. Firmware used to be something you couldn't easily change. It sits between the hardware and the software. What exactly would you call it if you think the term is bad?

3
9point6reply
lemmy.world

Honestly, I think you're wrong here, they were colloquially called floppy disks because at the time the whole thing was floppy. If the first floppy disks came in hard casings, they would never have been called floppy disks

2
lemmy.ca

Take apart a 3.25" floppy disk, you'll find the magnetic platter (disc shaped thing) is floppy.

Take apart a hard disk drive, you'll find the magnetic platter(s) inside are metal.

If a floppy disk wasn't named after the thing inside the casing, why wasn't it called a floppy square or floppy rectangle?

2

It actually was originally a floppy diskette, but eventually shortened to disk because people are lazy

0

Nope it came from the housing, it was originally called a diskette. The disk itself isn't really floppy tbh, more bendy. But the old diskettes were floppy af

0
tabularreply
lemmy.world

Device functionality software, which is low-level? Probably won't win any minds.

Besides, if we (and others reading) know what concepts each other is referring to then it really doesn't matter what word we use.

1

Firmware is easier to say, at a company I worked at we also called FPGAs gateware which was both interesting and convenient

1

It's closer to the hardware. Generally harder to update. It's less frequently updated. And it's less fault tolerant.

Idk, sure, it's technically software. But it's pretty clearly at least a distinct subsection that deserves it's own moniker.

13

The only common thing between software and firmware is the coding part. Everything else is different. Fault tolerance, memory management, MCU optimization, etc.

8

This reminds me of when, during the building and development of the Apollo program- electrical engineers were tasked with effectively creating the "software" of the guidance system, and when one of the lead developers told his wife "I'm working on the software for the rocket" She replied "We're not going to tell people that you're working in underpants."

8

I knew this but I'm pretty sure I just assumed that's what it meant somewhere along the way.

7

I've always thought about it as the way the software and hardware talk to each other.

6
lemm.ee

38 and I thought firm meant company. Like the firm that created the software for the hardware.

4
lemmy.world

How can you be 30 years in the industry and not know what firmware is?

-7

Yes my bad, misunderstood this as "I don't know what firmware is"

1
pistachioreply
lemmy.ml

I think he does know what a firmware. Just didnt't realize the origin of the term.

A firmware is neither soft nor hard... it's firm.

(Or maybe I completely misunderstood the tweet 🙄

5

Oh the name, completely misunderstood this as "I don't know what firmware is".

1

I know, right? That's why I never call tech support. Nowadays I'm practically computer illiterate, but I still know how to find answers without hearing: "Hello It, have you tried turning it off and on again?".

-5