1.1 现阶段成果

现阶段的Smart-VM虚拟机监控器,已经能够运行一个单进程的UCOS-2.52。

目前,我们已解决的关键性技术包括:

a)        实模式虚拟化

                        i.              BIOS虚拟化

                      ii.              特权指令虚拟化

b)        保护模式虚拟化

                        i.              实模式向保护模式跳转

                      ii.              控制台虚拟化

1.2 演示环境

a)        运行环境:bochs 2.4.1

b)        客户操作系统:ucos-2.52 for Smart-VM

1.3 演示流程:

演示流程包括:

1.      计算机自动加载引导程序,此时处于实模式;

2.      从实模式进入保护模式;

3.      开启虚拟内存;

4.      初始化驱动程序;

5.      从硬盘读取UCOS的引导程序(此时就涉及到硬盘驱动程序);

6.      激活VMX模式,进入VMX根模式;

a)        图8.1:VMXON执行成功(标志Eflags的位0是0)。

图  8.1 激活VMX模式

7.      进入VMX非根模式,将控制权交给UCOS的引导程序(此时涉及到实模式虚拟化);

a)        图8.2:成功地从VMX根模式跳转到VMX非根模式。

图  8.2 第一次VM entry

8.      UCOS通过int 13h,从硬盘读取UCOS内核(此时涉及到BIOS虚拟化);

a)        图8.3展示了当处理器执行int指令的时候,直接跳转到VMX非根模式下的保护模式;

b)        图8.4展示了I/O虚拟化,当执行out指令的时候,就退出到VMX根模式;

c)        图8.5:当执行完虚拟机的请求时,回到VMX非根模式;

图  8.3 BIOS虚拟化

图  8.4 I/O虚拟化

图  8.5 同一个VMCS,第二次VM entry

9.      加载全局描述符(特权指令虚拟化);

a)        图8.6:执行lgdt,产生异常,被VMM捕获,直接VM exit

图  8.6 特权级指令虚拟化

10.  跳转到保护模式;

a)        图8.7:实模式到保护模式的跳转;

图  8.7 从实模式到保护模式的跳转

11.  运行UCOS内核;

a)        图8.8:UCOS的运行效果;

图  8.8 UCOS的运行效果

1.4 本章小结

现阶段的Smart-VM虚拟机监控器,已经能够运行一个单进程的UCOS-2.52。

本章主要演示了UCOS2.52从启动到进入保护模式,创建进程,执行进程的过程,涉及的技术包括:

a)        实模式虚拟化

                        i.              BIOS虚拟化

                      ii.              特权指令虚拟化

a)        保护模式虚拟化

                        i.              实模式向保护模式跳转

                      ii.              控制台虚拟化

 

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐