如何像VirtualBox一样编写自己的虚拟机?

How to write my own virtual machine like VirtualBox?

我想写虚拟机。理想情况下,我想编写程序,它将是 运行(emulate) windows 7(from .iso) 并将其显示在 window on Windows 7 parent 中。但我不明白该怎么做。我了解如何模拟 cpu,例如,只需编写包装器(接口)即可提供真正的 cpu 资源(http://www.codeproject.com/Articles/43176/How-to-create-your-own-virtual-machine),但接下来呢?如何运行OS,会用到cpu这个抽象接口。 Bios 启动 OS,我应该模拟 bios 吗?怎么做?我应该从什么开始?请描述我执行任务的基本步骤。 非常感谢!

我确信这些类型的程序会投入多年的工作。但是,要尝试模拟 CPU 并自己编写代码,请查看 nand2tetris。 它首先从逻辑和算术开始,慢慢地朝着程序控制、高级语言和操作系统的方向发展。

希望对您有所帮助!

(顺便说一句,它免费提供所有资料和软件!)