4 ms·
> And this is how we ended with the extreme fragmentation and heterogeneity we have in Linux Tangentially, I've long wondered why the Linux "API" is such a mes
by AceJohnny2 3y ago
> And this is how we ended with the extreme fragmentation and heterogeneity we have in Linux
Tangentially, I've long wondered why the Linux "API" is such a mess, in particular why are there multiple tracing frameworks? Multiple security frameworks? Which to choose??
It turns out, this is a consequence of Linux's stand-alone development, along with their (good) "never break userspace" mantra. The two together mean they can never deprecate an API.
Contrast this with the *BSD's development, where the kernel is developed alongside the libc and (a core set of) user-space applications. This allows them to evolve and deprecate their APIs, because they can update the clients.
(From a runtime perspective, all is not lost in Linux, as I suppose they can move an API to a module or allow "users" (distros etc) to disable it at compile-time.)