Skip to content

Comment on The Unix-Haters Handbook (1994) [pdf]parent

Comments

That is a very good question! What we have now it's a bunch of old operating systems, no novelty, no new computing paradigm.

Entirely false, if you have kept up with the state of the art in operating systems.

Many still expose their old APIs by necessity of course, but the internals have undergone leaps and bounds improvements and new APIs and functionality are added all the time.

Hate to use a car analogy but just because you have a car called Corolla and has a steering wheel and pedals, does not mean it has had no meaningful advancements since this https://global.toyota/pages/corolla50th/history/era/01/image...

I agree completely. Just look at io_uring and PowerShell, to name some examples.

io_uring totally rethinks the notion of a "syscall". It is going to eat the world, and most of us are not even going to realize that it happened.

PowerShell is a really cool example of re-imagining input and output. Namely, it is record-oriented ("Object") rather than byte-oriented. No more stringing together chains of fragile "awk" commands to make pipelines do what you want. (I know there is prior art here)

If you think OS's are moving still, then you're the one stuck.

Just lots, wherever you look. io_uring and eBPF are the new hotness, but we've had operating systems scale up from a few CPUs to hundreds or thousands in the past few decades, we've had filesystems like ZFS and BTRFS with checksums and snapshots and versions, there's namespaces and containers, hypervisors built into the OS and paravirtualization, multiqueue devices with command queue programming models, all sorts of interesting cool things.

Before someone jumps in and says we've had all these things before, including io_uring and eBPF (if you squint) and scaling to hundreds of CPUs and versioning filesystems etc. That is true. IRIX scaled on a select few workloads on multimillion dollar hardware and even that fell in a heap when you looked at it wrong. The early log structured filesystems that could do versioning and snapshots had horrific performance problems. IBM invented the hypervisor in the 1960s but it was hardly useful outside multimillion dollar machines for a long time. Asynchronous syscall batching has been tried (in Linux even) about 20 years ago, as have in-kernel virtual machines, etc.

So my point is not that there isn't a very long pipeline of research and ideas in computer science, it is that said long pipeline is still yielding great results as things get polished or stars align the right way and people keep standing on the shoulders of others, and the final missing idea falls into place or the right person puts in the effort to put idea into code. And those things have been continually going into practical operating systems that everybody uses.

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.