Greetings OSDevers!
So, I am a total DOS geek and the phasing out of BIOS totally breaks my heart. Decades of beautifully crafted x86 code will be rendered completely unusable (outside of DOSBox / VirtualBox) on new machines in the very near future. I recently had an (good / bad?) idea and I thought I would end my multi-year lurking streak to share it. A 64 bit DOS clone which runs each process from within a virtual machine using hardware virtualization features. "But, why?" you ask? I think it could satisfy three goals:
1. FreeDOS is great. But once motherboard manufacturers drop BIOS in favor of UEFI, FreeDOS won't work. It would be nice if there were an OS which was binary compatible with MS-DOS that would run on todays x86-64 machines and (hopefully) the machines which will come out for the next couple decades.
2. IMHO, the biggest problem with real mode DOS is process isolation. Using hardware virtualization would make it possible to run unmodified DOS binaries while retaining control over memory, hardware, and filesystem access.
3. Maintaining binary compatibility with traditional (MS-)DOSes would make a wide variety of tools available.
Yes, I know that like most (even modest) OS projects, this would be a lot of work. Emulating BIOS + MS-DOS API is a pretty lofty goal, but one that has been achieved previously with reasonable success by other teams (so lots of existing GPLed code to look at
).
Does anyone know if there is already a project with similar aims that I could assist with? Maybe there is some other way to achieve these goals that I'm not aware of? Maybe there is some fatal flaw in my plan that would render it impossible or extremely difficult to do? I would really appreciate any and all feedback ranging from "That's stupid" to "Great idea!".
I have started researching the technicalities of implementing this idea and it seems feasible so far to me, but I won't go into details (unless you're interested) lest this post become pages long.
Thanks for reading!