Open minexew opened 4 years ago
For the host-guest interface, we can draw inspiration from QEMU's virt
machine
This is definitely possible and would be a lot of work. The thing that worries me the most is would this be significantly faster than running Temple OS under QEMU with KVM enabled when it is all said and done?
Significantly faster? Probably not. But that's not the point. The point is to be able to run on physical hardware!
Do you think the big amount of work would be in understanding how to integrate with the kernel, or in writing new code, or both?
I don't really have a good feel for how much work it would be. If I were going to do it, I would just do keyboard, mouse, block devices, PC speaker, and video. I wouldn't do anything with USB or networking without the help of having access to a real Linux user space as well.
I do get the feeling that it would probably be just as easy to do everything in user space. Also I think most people are going to want to be able to use all the programs that come with a standard Linux user space in addition to Temple OS?
The loader could then provide a sane interface for TOS to access hardware (input, block devices, video, network, USB). You would still have the full TempleOS environment with a high degree of compatibility, except you don't need to care about x86 quirks anymore, and you get hardware support "for free".
Best of both worlds?
Note: host kernel doesn't necessarily have to be Linux, could probably be also BSD. However Linux is, in my understanding, more self-contained, so it should be easier to do.