Still, it's entirely feasible.
Technically all manageable, but that wasn't the aspect I was focusing on, rather the reality that we couldn't just do this today, or even really all that soon.
Alternatively, PCs become games consoles when running games, and you just can't do multitasking, just like you mostly can't on a PS2, etc. Honestly, I think this would be the most likely outcome if games went down this road.
There's only one project I'm aware of that does multi-processing: https://cybersecurity.springeropen.com/articles/10.1186/s424... .
There was a company (sadly defunct) that was building Erlang unikernels, and you can't say Erlang doesn't have multitasking.
It doesn't have to be unikernel either, Linux without anything else, your code being PID 1 is also good: no cruft and extra services that can be security holes, but great platform support, optimized network stack etc.
Of course if you just run on one hardware why not, just write the drivers you need.
What if one could run an application without a full kernel, using only the drivers needed for a single application.
It is not a full kernel with a full set of drivers. Maybe we can call it a "unikernel".
From there, if you want to simplify you can either add hypervisor-like isolation functionalities to the OS (containers) or move the little that’s actually needed from the OS into the application (unikernels).
That’s why Docker bought MirageOS a few years ago.
iirc, this was roughly predicted by Jonathan Blow who complained that in the 80s developers would routinely bundle an OS with the app and it would run bare-metal
This would mean you could take any application made for, eg., x86, and run it on any x86 cpu -- rather than being "windows-specific" etc.