Live data from Hacker News

Ask HN: What did Linux not do right?

news.ycombinator.com

11–20 of 173 posts

Re: Ask HN: What did Linux not do right?

#11
post #5

The concept of device drivers being within the kernel is a terrible idea. It should instead offer a stable ABI for drivers to be external and (within reason) be independent of the kernel version.

This, a thousand times. But apparently it's much more difficult than it seems.

Re: Ask HN: What did Linux not do right?

#12
post #5

The concept of device drivers being within the kernel is a terrible idea. It should instead offer a stable ABI for drivers to be external and (within reason) be independent of the kernel version.

This, a thousand times. But apparently it's much more difficult than it seems.

Isn’t this what windows does?

Re: Ask HN: What did Linux not do right?

#14

Not Linux, but Systemd[0] makes many people angry. Entire distros have purposefully not included it. Look at Devuan[1] [0] https://en.m.wikipedia.org/wiki/Systemd [1] https://www.devuan.org/

people that are militantly anti-systemd confuse me greatly. the different and inconsistent init systems that preceded it were a nightmare.

it led to a whole ecosystem of secondary system to manage apps, god, runit, monit, supervisord, etc.

now i can just write a simple configuration file and have my app managed. i can describe network filesystem mounts as dependencies. blah blah.

systemd made all of this trivial.

Re: Ask HN: What did Linux not do right?

#15
post #2

If you were starting a project like that today, it'd probably be a capability-based microkernel written in Rust.

A project like what, exactly? Linux wasn't some high-minded academic project that would pick off a menu of contemporary systems research or software engineering goals.

The early Linux project was a punk concept of its era. Linus very clearly started out as wanting to make a Unix-like kernel on commodity x86 PCs of the time. It was a personal, workstation hack for motivated tinkerers. Things like server and supercomputer usage were not imagined yet.

I'm not even sure what a moral equivalent project idea might look like today. It was a typical hacker blend of wanting to emulate something that was scarce/expensive using less expensive resources. Today, the smartphone might be the equivalent commodity platform. Both iOS and Android might be equivalent to the MS/DOS+Windows hegemony. But there isn't any equivalent of the balkanized and expensive Unix vendor market for phones, which technical students might aspire to. Linux didn't set out to rewrite the popular commercial OSs of the day from Apple and Microsoft.

Re: Ask HN: What did Linux not do right?

#16
post #5

The concept of device drivers being within the kernel is a terrible idea. It should instead offer a stable ABI for drivers to be external and (within reason) be independent of the kernel version.

This is exactly why on Windows open source drivers are a rounding error while on Linux open-source drivers are the norm.

Re: Ask HN: What did Linux not do right?

#17
Disk I/O. It's basically all blocking except the fairly recent io_uring which is much more than disk I/O and perhaps a bit daunting for "I want to write some data without starving my main thread." I wish you could use select() and poll() on regular files on disk, like you can for almost all other file descriptors.

Re: Ask HN: What did Linux not do right?

#18

Earlier quoted context omitted.

This, a thousand times. But apparently it's much more difficult than it seems.

Isn’t this what windows does?

If you call changing APIs every other major release of Windows, then sure.

Having your drivers in tree allows the developer changing said API to update everything in tree that depends on said API which they are changing.

Re: Ask HN: What did Linux not do right?

#19
post #16
post #5

The concept of device drivers being within the kernel is a terrible idea. It should instead offer a stable ABI for drivers to be external and (within reason) be independent of the kernel version.

This is exactly why on Windows open source drivers are a rounding error while on Linux open-source drivers are the norm.

A proprietary driver that works is better than an open-source one that doesn’t work or doesn’t even exist.

Re: Ask HN: What did Linux not do right?

#20
post #16

Earlier quoted context omitted.

This is exactly why on Windows open source drivers are a rounding error while on Linux open-source drivers are the norm.

A proprietary driver that works is better than an open-source one that doesn’t work or doesn’t even exist.

Sure, but like 5 open source drivers is better than one proprietary driver that works, so that math gets complicated pretty fast.

For a while you could actually use windows USB wifi drivers (Ndiswrapper) under linux, but it turned out to be unnecessary eventually.

Post reply on HN