It's Time for Operating Systems to Rediscover Hardware
A perennial complaint; Rob Pike had a trollier but similar version years back. I&#x27;m not nearly as optimistic that we have the resources to cope with the monstrous complexity of hardware now.<p>An anecdote I like to share is that while I was TA&#x27;ing CMU&#x27;s 15-410 operating systems course (a great course - build a preemptive multitasking operating system from <i>scratch</i>) was that the student projects could run on real - if old - hardware. There was a PC that could boot your stuff if you put it on a disk.<p>This PC had to have PS&#x2F;2 interface to the keyboard, though. A newer PC would be all USB. Apparently, the complexity of the codebase to talk to the USB device was around the similar level of complexity to the <i>entire preemptive multitasking operating system</i> the students were building (and, of course, considerably less educational). I mean, this wasn&#x27;t a full-functioned OS, but it allowed multitasking and preemption of kernel calls, so seriously non-trivial.<p>Multiply this story by all the devices a reasonable OS would be expected to talk to and it&#x27;s a scary prospect for the OS researcher... and if you don&#x27;t have those devices up and running, good luck supporting most workloads anyone cares about.