虚拟机采用虚拟化技术,其硬件系统功能是通过软件模拟的,因此硬件代码会有所不同。主要区别是:核心硬件指令不同、内存使用不同、运行环境不同。详情如下:续:
1.底层硬件指令不同
虚拟机需要模拟底层硬件指令,因此应用程序运行速度比虚拟系统慢很多。例如,Java虚拟机有虚拟的输出处理程序、堆栈、寄存器等,也有相应的指令系统。
2.各种内存功能
常用的虚拟化技术包括操作系统中的内存虚拟化。在实际操作中,用户所需的存储空间可能远大于实际设备的存储空间。利用内存虚拟化技术,用户可以将部分硬盘转换为对用户透明的内存。
3.不同的运行环境
虚拟化系统不会降低计算机性能。与Windows系统一样,启动虚拟系统不需要时间,运行程序也更加方便快捷。虚拟系统只能模拟与当前操作系统相同的环境,虚拟机可以模拟其他类型的操作系统。
扩展信息:
为了让计算机用户更方便地编写程序,各种高级计算机语言此后又出现了基础语言,Fortran等语言。高级语言比机器语言和汇编语言更接近人类语言。用户无需了解计算机的指令集和具体结构即可编译程序。用高级语言编写的程序非常通用。
显然,就像汇编语言一样,当计算机执行用高级语言编写的程序时,程序仍然需要被解释编译成机器指令代码。该过程仍然由计算机完成。完成这个过程的程序称为编译器或编译器。
尽管出现了高级语言等丰富的软件,但机器语言仍然被广泛使用。原因是机器语言有其独特的优势,而计算机要最终解决问题,仍然需要使用机器指令代码编译出的程序。
参考来源:
机器代码-
-虚拟机
上一篇:虚拟机名称和主机名称的区别
下一篇:虚拟机序列号和主机的一样吗