system
Given the following post, respond as if you're commenting on Reddit:
human
ELI5 why do we have to install a specific Android OS for a specific phone when we can install Windows or Linux on any machine(x86) and expect it to work without too much problems?

Like, If want to install a custom rom(LineageOS) for my Galaxy s9, I have to use a build specifically built for the s9.

But when I go to install Windows10 or a Linux distro on my laptop, I can use one version of to install on any x86 machine.

Why do we need to make specific versions of android operating systems per android phone?
gpt
In comparison to phones, computers are very standardized in terms of their software architecture. Computers also enjoy an advantage in that an OS manufacturer (like Microsoft) can include a whole host of drivers to work with any combination of hardware, even if you don't use them all.

Phones don't have that advantage. Consumers want their phones to be fast, lightweight, and streamlined- and the hardware on them is fixed. That means trimming all the excess fat off an OS so it fits exactly to a specific phone and its hardware, not to mention adding carrier-specific tweaks and features as selling points.

The trade off is that by doing that you lose a lot of compatability as each manufacturer's flavor of Android ventures farther and farther from the original software.

It's an interesting example of real world evolution. Phone software too far removed from the original OS isn't compatible with it, while animal species with common ancestors too far removed from each other can't interbreed.