当前位置:首页 > 虚拟机 > 正文

怎么用代码做一个虚拟机


一、vmware虚拟机客户端的代码代码如下:
org07c00h;指示编译器加载07c00h
movax,cs
movds,ax
moves,ax
callDispStr;显示字符串函数调用
jmp$;无限循环
DispStr:
movax,BootMessge
movbp,ax
movcx,16
movax,01301h
movbx,000ch
movdl,0
int10h
ret
BootMessage:db"hello,OSwor​​ld!"
times510-($-$$)db0
dw0aa55h
此代码是用NASM编写的,NASM是一种类似于MASM的语言。org07c00h命令在命令后代码中的偏移地址上加上07c00h,这样程序就对应在0000:7c00处执行。书中提到,使用命令生成引导代码,然后将写入软盘第0页第1磁道扇区。问题是,没有盘怎么办?不过好像软盘的镜像文件是可以用来启动WMware虚拟机的,所以就想着自己制作一个镜像文件来代替软盘作为启动盘。但是如何创建这个图像文件呢?
我记得在Linux中使用dd命令应该可以创建Linux启动盘,所以我在网上搜索了dd创建镜像文件的方法如下:
1首先,创建一个空的磁盘映像文件(1.44MB磁盘映像文件):
ddif=/dev/zeroof==512count=2880
2创建包含的镜像文件:
ddif===512count=1
3中1个扇区之后的数据复制到后面
ddif==p=1seek=1bs=512count=2879
这样就会创建一个镜像文件大小为1.44MB的引导代码。


二、怎么在自己电脑创建虚拟机

您可以使用VMwareWorkstation创建新的虚拟机。具体步骤如下:

1.启动VMwareWorkstation10并单击“创建新虚拟机”

2.在“新建虚拟机向导”弹出窗口中,选择“自定义”,然后单击“下一步”

3。选择“Workstation10.0”,然后选择“下一步”

4.选择“稍后安装操作系统”,然后选择“下一步”

5.来宾操作系统选择“linux”,然后指定对应的版本号

6和存储位置

7。根据虚拟机的物理模式设置处理器和核心数

8

9。创建网络类型

10。选择I/O控制器类型

11。选择磁盘类型

12。创建新的虚拟磁盘

13.指定磁盘大小等。

14.设置磁盘文件名

15机器创建成功

扩展信息:

机器技术虚拟化是虚拟化技术的一种,它将事物从一种形式转变为一种形式,应用最广泛的虚拟化技术是操作系统。采用介质内存虚拟化,用户实际运行时所需的内存空间可能远大于实际设备内存大小,用户可以利用内存虚拟化技术将部分硬盘转换为内存,这对用户来说是显而易见的。例如,可以利用虚拟专用网络(VPN)技术在公共网络中模拟一条安全稳定的“隧道”,让用户感觉就像在使用专用网络一样。

虚拟机技术最早由IBM在20世纪60年代和1970年代提出,被定义为实现硬件的软件模拟,通常的使用模型是在昂贵的大型机中分时共享。虚拟机监视器(VMM)是虚拟机技术的核心,是位于操作系统和计算机硬件之间的一层代码,用于将硬件平台划分为多个虚拟机。

VMM运行在特权模式下,其主要功能是隔离和管理上层运行的多个虚拟机,控制它们对底层硬件的访问,为每个guest操作虚拟出一组虚拟机系统。独立于虚拟硬件环境(包括处理器、内存和I/O设备)。VMM使用特定的调度算法在虚拟机之间共享CPU,例如时间片轮换调度算法。