Skip to content
0:00 / 0:00

#timothyroscoe#osdi#enzian

USENIX ATC '21/OSDI '21 Joint Keynote Address-It's Time for Operating Systems to Rediscover Hardware

USENIX

42K subscribers • 4 videos on Hallway

YouTube
  • Recommended by 14 people: 12 on Hacker News and 2 on Lobsters.
  • A classic. People kept recommending it from 2021 to 2026.
  • Presented by Timothy Roscoe, Professor at ETH Zurich
  • Linked in the descriptionPaper on usenix.org
  • An opinion. It argues one side of a question engineers disagree on.

Advanced. Deep dive for people who know the field.

46K views5 years ago14 recommendations

Systems programmingHardwareOperating systemsCPUs and computer architecture

Timothy Roscoe argues that modern operating systems must evolve to handle heterogeneous hardware rather than relying on outdated, simplistic CPU models.

USENIX ATC '21/OSDI '21 Joint Keynote Address-It's Time for Operating Systems to Rediscover Hardware Timothy Roscoe, ETH Zurich A glance at this year's OSDI program shows that Operating Systems are a small niche topic for this conference, not even meriting their own full session. This is unfortunate because good OS design has always been driven by the underlying hardware, and right now that hardware is almost unrecognizable from ten years ago, let alone from the 1960s when Unix was written. This change is receiving considerable attention in the architecture and security communities, for example, but in contrast, so-called OS researchers are mostly in denial. Even the little publishable OS work that is not based on Linux still assumes the same simplistic hardware model (essentially a multiprocessor VAX) that bears little resemblance to modern reality. In this talk, I'll speculate on how we came to this unfortunate state of affairs, and what might be done to fix it. In particular, I'll argue for re-engaging with what computer hardware really is today and give two suggestions (among many) about how the OS research community can usefully do this, and exploit what is actually a tremendous opportunity. Timothy Roscoe is a Full Professor in the Systems Group of the Computer Science Department at ETH Zurich, where he works on operating systems, networks, and distributed systems, and is currently head of department. Mothy received a PhD in 1995 from the Computer Laboratory of the University of Cambridge, where he was a principal designer and builder of the Nemesis OS. After three years working on web-based collaboration systems at a startup in North Carolina, he joined Sprint's Advanced Technology Lab in Burlingame, California, in 1998, working on cloud computing and network monitoring. He joined Intel Research at Berkeley in April 2002 as a principal architect of PlanetLab, an open, shared platform for developing and deploying planetary-scale services. Mothy joined the Computer Science Department ETH Zurich in January 2007 and was named Fellow of the ACM in 2013 for contributions to operating systems and networking research. His work has included the Barrelfish multikernel research OS, as well as work on distributed stream processors, and using formal specifications to describe the hardware/software interfaces of modern computer systems. Mothy's current research centers on Enzian, a powerful hybrid CPU/FPGA machine designed for research into systems software. View the full USENIX ATC '21 Program at usenix.org/conference/atc21/technical-sessions

Why it's here

14 people recommend this

What people say. Highly recommended as a brilliant and eye-opening critique of modern operating system design and its failure to keep up with hardware reality.

GeoffWozniakon Lobsters • Recommends

It's Time for Operating Systems to Rediscover Hardware

bcantrillon Hacker News • Recommends

On “Rust, Wright's Law, and the Future of Low-Latency Systems”

I know that I recommended it in the talk, but I highly recommend Timothy Roscoe's OSDI keynote0 -- and may also be worth catching the Twitter Space we did a few weeks ago discussing it.1 0 link to this video 1 link

dist1llon Hacker News • Recommends

On “Tales of the M1 GPU”

There's this great USENIX talk by Timothy Roscoe 1, which is part of the Enzian Team at ETH Zürich. It's about the dominant unholistic approach to modern operating system design, which is reflected in the vast number of independent, proprietary, under-documented RTOSes running in tandem on a single system, and eventually leading to uninspiring and lackluster OS research (e.g. Linux monoculture). I'm guessing that hardware and software industries just don't have well-aligned interests, which unfortunately leaks into OS R&D. 1 link to this video

jcglon Hacker News • Recommends

On “C Isn't a Language”

This isn’t my space to opine on, but I found this talk both riveting and compelling: link to this video In a nutshell, the useful fiction of computer-as-Von-Neumann-meaning doesn’t adequately reflect the reality of modern hardware. Not only does the CPU itself not fit that model (with things like speculative execution, sophisticated power and load management…), but the system as a whole is increasingly an amalgamation of different processors and address spaces.

lostdogon Hacker News • Recommends

On “On Hubris and Humility: developing an OS for robustness in Rust [video]”

Very interesting. This reminds me a ton of L4, with its message passing style. I'm curious if it was inspired by L4. It's a great talk, and my only disappointment was that I was hoping to hear about what comes after. After watching the OS talk that Cantrill references 0, I really want to know the answer to "what does an OS that runs across a bunch of heterogeneous chips look like?" Having Hubris be just a single-node OS was a bit of a let down, so I will be staying tuned for the sequels. 0 link to this video EDIT: Went to go read the docs and: "The operating system that originally made this point was L4, and Hubris’s IPC mechanism is directly inspired by L4’s"

mikewaroton Hacker News • Recommends

On “Ask HN: "Know Your Hardware”: best books/resources to learn?”

First of all, watch this, and learn that there's a whole stack of layers below what Linux can even touch these days. link to this video For a theoretical understanding, with a much simpler model, I suggest the Nand2Tetris course.

the_dukeon Hacker News • Recommends

On “I tested four NVMe SSDs from four vendors – half lose FLUSH’d data on power loss”

I can recommend the related talk "It's Time for Operating Systems to Rediscover Hardware". 1 It explores how modern systems are a set of cooperating devices (each with their own OS) while our main operating systems still pretend to be fully in charge. 1 link to this video

zerohpon Hacker News • Recommends

On “How to tell a mainframe from a minicomputer from a micro”

> So as someone else commented, a mainframe isn't really a computer, it's a whole cluster of closely-coupled computers, many with dedicated functionality. Quite possibly all implemented with different architectures, instruction sets, programming languages, bit widths, everything. Nearly all computers more powerful than a simple microcontroller look like this in 2022. If you find this fact surprising, you'll probably want to take a look at this talk from USENIX ATC '21: link to this video

mlindneron Hacker News • Recommends

On “I have come to bury the BIOS, not to open it [video]”

> I would really like to know if my x86 'linux PC', is actually running another 'hypervisor' OS that runs Linux - it seems like a recipe for security vulnerabilities. There's not so much a "hypervisor" OS, but instead a congealed set of many different OSes, some realtime OSes, some possibly old Linux variants, some possibly closed source proprietary one-off OSes. I suggest taking a look at the talk Bryan mentioned: link to this video

CrLfon Hacker News • Recommends

On “Disabling the Intel Management Engine”

The IME gets a lot of hate around here, but let's not get distracted by it: higher-privilege co-processors running code outside the main OS' control is becoming (or already is) the norm everywhere. Intel-based PCs are just one instance of it (and perhaps not even the most egregious one). Most hardware has evolved to effectively run the main OS under a sandbox where it "thinks" it is in control, but isn't. A nice talk on this: link to this video

Sirenedon Hacker News • Recommends

On “How Many Computers Are in Your Computer? (2021)”

A favorite related to talk is Roscoe's keynote titled "It's Time for Operating Systems to Rediscover Hardware" 1 in which he discusses some of the outcomes/consequences of kernels (like Linux) largely sticking their heads in the sand on the issue of these massively heterogeneous SoCs. 1 link to this video

jiveturkeyon Hacker News • Recommends

On “Ask HN: Where can I find a primer on how computers boot?”

…y all tell pretty much the same story whether on real hardware or virtual. But modern real hardware first boots a Management Engine (or BMC, or T2, or similar), which prepares things and starts subsystems like hardware controllers, before releasing the CPU where the "OS" finally boots, blissfully unaware that it is running on an abstraction. Watch link to this video from about 10:00 to about 20:00 for a decent super high level overview. These two are also good for a deeper understanding. link link They both cover UEFI, even though the focus is on T2. I know that's well beyond what you were asking for, but the boot process goes well beyond GRUB.…

RealityVoidon Hacker News • Recommends

On “Programmers Don't Read Books – But You Should (2008)”

I'd say the computer architecture can vary _greatly_ and there are a bunch of cores in modern SOC's that kind of break the assumption of how a computer works. I recently listened to this: link to this video Cache coherence, accelerators, various takes on pipelining, ISA extensions. There are many many things that change all the time. Not even touching the SW glue stuff that changes. I don't know the history of react and what is going on in modern browsers, but I suspect there are OS constraints, evolving web standards, extra capabilities, evolving browsers that shape and force the framework to adapt. I am doubtful people change it just for the sake of it.

PuercoPopon Lobsters • Recommends

It's Time for Operating Systems to Rediscover Hardware

hresvelgron Hacker News • Mentions

On “Dear Open Source Developers”

…I'm starting to think that a complete rebuild of modern computing might occur when the limits of the old OS architectures become too burdensome, at which point there could be an opportunity to "fix" the application stack and try something simpler. I sincerely hope the OS's of the future do not look like Linux or even attempt POSIX compliance. 1 link to this video…

chuboton Hacker News • Mentions

On “Rust, Wright's Law, and the Future of Low-Latency Systems”

Reminds me of Your computer is already a distributed system. Why isn’t your OS? from HotOS 2009: link We argue that a new OS for a multicore machine should be designed ground-up as a distributed system, using concepts from that field. Modern hardware resembles a networked system even more than past large multiprocessors: in addition to familiar latency effects, it exhibits node heterogeneity and dynamic membership changes And now that I look at the author list, I see Roscoe, who gives the 2021 keynote that Cantrill recommends: link to this video