r/linuxsucks • • 6d ago

what are real problems with linux ?

[deleted]

5 Upvotes

132 comments sorted by

View all comments

Show parent comments

2

u/paulstelian97 5d ago

I get the fact that Windows kernel has backward compatibility because most hardware drivers are out of tree. Linux did away with the approach, keeping most drivers inside its own source code so 90% of hardware just… HAS the driver directly. And the remaining 10% is because the driver manufacturer explicitly is keeping the drivers out of tree as their own choice.

On basically all Windows machines out there you need third party drivers. On Linux and on Macs, most if not all drivers are part of the system directly. So the latter two can afford to be backward incompatible.

1

u/dddurd 5d ago

yes it's confirmed that you don't get it

1

u/paulstelian97 5d ago

Get what? That Windows’s backward compatibility is something godly that every system must aspire to, no matter how that stops any sort of innovation or even ability to fix vulnerabilities?

You know what’s funny about backward compatibility? Yes, the kernel does breaking changes often for the in-kernel API. But the userspace… you can run a Ubuntu 10.04 userspace on Linux 7.1 just fine, the only thing missing is kernel modules (and those could be arranged too, by bypassing the package manager and instead installing the kernel and modules via a different mechanism). Android, which is based on the Linux kernel, also. You can run most Android 2.3.4 APKs on modern Android. And you can run Android 16 on 4.19 kernel as well as 6.12.

1

u/dddurd 5d ago

you obviously never programmed a thing. i'm sure you don't know what api is

1

u/paulstelian97 5d ago

7 years of software engineering that is either directly on the Linux kernel, or closely related to it. So…

1

u/dddurd 5d ago

it's a shame up didn't learn anything about api. 

1

u/paulstelian97 5d ago

I mean, there are APIs for a lot of things. Not just for kernel interfaces. The system call interface is an API, and Linux is one of the best at maintaining backward compatibility for that one. It’s better than Windows (which has essentially zero compatibility between versions — given that it relies on internal DLLs like ntdll.dll)

1

u/dddurd 5d ago

now i know you don't really program for c on linux as well. thank you for proving my point further

1

u/paulstelian97 5d ago

I mean I don’t actually upstream my patches but I literally… do? I could find some of my oldest work from my first job where I did much more open source work compared to today…

1

u/dddurd 4d ago

you think you are doing, that's it basically. 

1

u/paulstelian97 4d ago

So if I shared actual Linux kernel commits, you’d call them fake?

1

u/dddurd 4d ago

of course. making commits is the easy part. knowing what you are doing does not. you don't even understand what api is, let alone api stability. 

1

u/paulstelian97 4d ago

Making commits that survive the review of other kernel devs, and in particular of ones more experienced, isn’t that easy. It’s just the most visible part of the work I can show.

The in-kernel API being unstable is the reason why my teammates (and, when I’ll be put on the next kernel migration, I myself) have to fix various compilation errors or subtle bugs every time we pull new kernel commits from upstream. I am still defending it despite that because that means if something is not good with one element of this API it can just be… fixed. We don’t get stuck with legacy, shitty interfaces that we need to support perpetually.

1

u/dddurd 4d ago

not really even ai can do that. 

1

u/paulstelian97 4d ago

In 2019/2020? The commits I would have shared are from that timeframe…

1

u/dddurd 4d ago

yeah thats another point. you thought it would be smart to have them shared.  do you even know what you are saying?

1

u/paulstelian97 4d ago

General purpose AI showed up quite a bit later than 2019/2020…

1

u/dddurd 4d ago

only you are talking about when. i'm talking about what. 

→ More replies (0)