百科问答小站 logo
百科问答小站 font logo



虚拟机的出现是为了解决什么问题? 第1页

  

user avatar   suan-le-ba 网友的相关建议: 
      

你说的是哪个虚拟机?JVM这样的?还是VMware这样的?

如果兼指所有,那么虚拟机的出现单纯就是为了抽象掉底层。为什么要抽象掉底层?因为硬件和操作系统都越来越不一样了。同样是X86的CPU,有的支持到SSE4,有的只支持MMX,还有的只支持3DNow!,代码若要跑得快需要自己去做繁琐的检测,还要写多份代码来应对。在只有MMX和3DNow!之分的年代最多代码量翻倍,但之后的发展越来越不可控制了。这还只是CPU的一项区别。其他硬件也出现了各种不同,例如硬盘接口SCSI、IDE、SATA、iSCSI,3D运算DirectX、OpenGL、3dfx,等等。操作系统之差异则无需赘述了。

这一切都应该有一个机制来代理。适配硬件的事情都很机械,理论上只要设计一种合适的机制,就能自动兼容所有硬件。于是虚拟机就诞生了。JVM之类的运行时虚拟机还抽象了操作系统,而VM之类的硬件虚拟机则只抽象了硬件。




  

相关话题

  为什么C语言能长盛不衰? 
  为什么要开源? 
  一个脑洞:理论上,是否有可能用一根棍子记录无限多的信息? 
  工程上存在那么多不确定情况,为什么计算机不能利用它们产生真随机数,而只能根据逻辑产生伪随机数? 
  计算机专业真的如此完美吗? 
  3 月 14 日微软宣布比尔盖茨将退出董事会,会带来什么影响? 
  如何评价「线程的本质就是一个正在运行的函数」? 
  计算机未来应该纳入高考学科吗? 
  你在 GitHub 上看到过哪些有意思的 Issue? 
  一百行以下有哪些给力代码? 

前一个讨论
三个蛋挞,分别是紫薯的、提子的、黄桃的,有 80% 的把握第一个是紫薯的,有 80% 的把握最后一个是黄桃的,中间的那个是提子的概率是多大?
下一个讨论
新闻中看似无关的镜头是啥时候拍的?





© 2024-11-21 - tinynew.org. All Rights Reserved.
© 2024-11-21 - tinynew.org. 保留所有权利