|
|
|
|
|
by 708145_
3288 days ago
|
|
But if vendors does not want to upstream them as free software, then we have a problem and an issue with the non stable ABI solution. The end user does not care if the driver is free software, they just want their machines to work. I guess this is an issue for Google too, for their Linux fork Android. Of course everyone has the liberty to write a wrapper, but that is just silly. If Windows can have a stable ABI, why can't Linux have it too? Why would it need to "reduce the quality of running kernels"? |
|
You're saying this as though the end user experience is separate from improvements to the performance and semantics of the driver ABI.
Also, on Android all of the (kernel space) drivers are free software; it's just that they're so crappy usually that they can not be upstreamed. They don't hook into much of the infrastructure in the kernel on account of ignorance, so they could easily push updated kernel module binaries, ABI compatibility does not affect that problem.
Android's kernel is not a fork of Linux, it's a LTS tree with some configuration changes, and a couple of modules (most of which have been upstreamed by now).
> If Windows can have a stable ABI, why can't Linux have it too? Why would it need to "reduce the quality of running kernels"?
Windows doesn't have a stable driver ABI, they break driver ABIs pretty drastically every once in a while. Longhorn (later yielding Windows Vista) was the last straw, they couldn't build a good quality operating system with the same driver ABI.
Furthermore, drivers from Vista often do not work with 7, 8, or especially 10. You can get the exact same sort of stable driver ABI by distributing for a specific distribution release or long term kernel tree.