easyVM v0.2
easyVM是一个简单的虚拟机。0.1版本只支持8086指令集和一些简单的I/O设备,只支持英文文本显示方式。0.2版本主要是在0.1版基础上加了一小部分32位指令(pusheax等),使得easyVM可以运行MS-DOS6.22自带的大部分程序。
下载地址
用户评论
对不起没下下来。。。
很好的源码!
可以参考一下,学习一下虚拟机的原理
谢谢yinX大神!第一次看到你发布这个资源的时候很震撼,竟然可以自己写出一个虚拟机来。功力深厚,实在佩服! 我在easyVM虚拟机的基础上加了调试器(asm/dasm)和一些额外的IO实现,以后有机会也放上来。 cpu和IO端口设计的很清晰,值得借鉴,美中不足的是cpu指令并不全部是自己实现的,而是用了__asm。不知道这是不是有时候导致程序崩溃的原因? 此外,BIOS中断处理函数大多数通过伪造的OUT'指令实现,是个很聪明的想法。 源码里面缺了global.h,去掉#include "global.h"之后再略加修改便可编译通过。