Comment by randomdata

Comment by randomdata 2 months ago

4 replies

> Something else will eventually take Linux's place, in some form, it might even be a Linux based like Android, WebOS, ChromeOS.

So Linux won't be the same because it might start being marketed under a different brand name?

pjmlp 2 months ago

Anyone that has developed for Android, WebOS, ChromeOS is fully aware that the Linux kernel is an implementation detail, full of features not available upstream, like drivers written in Rust, which remains to be seen if it will ever have them.

Also given that the kernel is not exposed to userspace, other than to device vendors, it could be replaced by something else with very little impact to userspace, other than whatever people are doing in their rooted devices or via ADB shell, both meanigless for common consumers.

  • randomdata 2 months ago

    > it could be replaced by something else

    It is not really Linux-based if something else. Assuming the Linux-based property remains, though, isn't that still Linux, even if it ultimately is taken down roads Linus would have never approved of?

    • jart 2 months ago

      If a userspace process can't tell, then does it really matter? That's what qemu user teaches us. The Linux ABI is simple enough that a single dev could emulate probably 85% of it in pretty short order. What keeps Linux going is the supremacy of its internals. I've thought of so many ways to benchmark OS performance and I don't think I've ever seen modern Linux fare poorly.

      • cesarb 2 months ago

        > The Linux ABI is simple enough that a single dev could emulate probably 85% of it in pretty short order.

        Microsoft tried it (with WSL1), and gave up. The remaining 15% is the hard part, and plenty of software will depend on something within that 15%. Sure, there are only a couple hundred system calls, and most of them are pretty simple, but then there are the multiplexed system calls (ioctl, fcntl, ptrace, io_uring, etc), the fileystem-based ABI (procfs, sysfs, etc), the ever-growing set of flags to otherwise simple system calls, and even a network-like protocol between userspace and the kernel (netlink).