Remix.run Logo
IshKebab 7 days ago

No, the complexity usually isn't hidden. It's the driver's job to do that.

I guess one exception maybe is Nvidia who have sort of hidden the complexity by moving most driver functionality onto software on the card. At least that's how I understood it. Don't quote me on that.

saagarjha 6 days ago | parent | next [-]

Yes, and then you get odd behavior you can't introspect because the card is a black box to you.

account42 4 days ago | parent | prev | next [-]

In some cases it is hidden though. USB has a lot of "generic" device classes where (at least in theory) the OS only needs to deal with a standardized interface and whatever actual hardware is behind it is driven by an embedded controller.

It's just that most internal hardware initially only cares only about Windows (or only Linux) so it makes more financial sense to develop a more complex driver than a complex firmware. The equation might change later on but by then you are stuck with the hardware design.

Joker_vD 7 days ago | parent | prev [-]

> No, the complexity usually isn't hidden. It's the driver's job to do that.

Why not, though? We used to have e.g. glass teletypes with microprocessors (8080/8051) in them that exposed a serial bus with very neat command protocol that we still use nowadays, that could boot up, init and self-test all on their own.