虚拟机的2种解释
来源:互联网 发布:httpclient获取json 编辑:程序博客网 时间:2024/06/11 21:18
说起虚拟机我们很容易想起VMWARE,但之前还有个概念叫JAVA虚拟机,然而这2种虚拟机本质上是大不相同的。那么什么叫虚拟机呢?“虚拟机”这个概念在实际应用中有两种语境。第一种是“虚拟主机”的概念,第二种是“运行环境”的概念。这两种概念是不同的。
1、虚拟主机:,指的是操作系统内安装另一个操作系统。你如在Windows里,你可以装一个VMWare,然后在VMWare里安装一个Ubuntu Linux。这就是虚拟主机。Windows是一个操作系统,是装在硬件上的。VMWare是个软件,它模拟了一个和硬件相似的环境,让另一个操作系统可以安装运行在这个环境上。我们看Windows和Ubuntu Linux的关系,它们都是操作系统,是一个级别的。这种关系就像妈妈肚子里怀的宝宝,宝宝生活在妈妈的肚子里,妈妈和宝宝都是人,是一种寄生关系。
2、运行环境:“虚拟机”在做“运行环境”讲的时候,指的是操作系统被安装一个支持其他软件包运行的软件。最明显的例子就是“Java虚拟机”。所谓“Java虚拟机”是一个安装在操作系统上的软件,用于支持用Java编程语言编写的软件包的运行。它负责给java程序分配资源,帮助java程序做一些底层的工作,让java程序在它搭建的环境里运行。这时Java虚拟机也是操作系统上的一个软件,其他java如阿健要依赖它才能运行。它是一个底层的支持环境。微软有个仿照java架构的开发环境,即.NET Framework。这里就没有使用“Virtual Machine(虚拟机)”这个术语,而是用了“Framework(框架)”。这两个词实际的意义是一样的,都是Runtime Environment(RE,运行时环境),但是可能Framework更容易理解。它就是一个框架,其他程序可以在这个框架的支持下运行。现在除了技术界,Java官方对公众也尽量使用JRE(Java Runtime Environment),而不是JVM(Java Virtual Machine)的概念了。
Android的架构是第二种“虚拟机”。Android最底层是Linux操作系统,在这个操作系统上安装了一个叫Davilk的Java虚拟机。用Java编写的各种应用在Davilk的支持下运行。
云OS的架构也是第二种“虚拟机”。云OS最底层是Linux操作系统,在这个操作系统上安装了一个阿里的Java虚拟机。用Java编写的各种应用在该虚拟机的支持下运行。
可见,Android和云OS下运行的都是JAVA程序,可以互相兼容。
1、虚拟主机:,指的是操作系统内安装另一个操作系统。你如在Windows里,你可以装一个VMWare,然后在VMWare里安装一个Ubuntu Linux。这就是虚拟主机。Windows是一个操作系统,是装在硬件上的。VMWare是个软件,它模拟了一个和硬件相似的环境,让另一个操作系统可以安装运行在这个环境上。我们看Windows和Ubuntu Linux的关系,它们都是操作系统,是一个级别的。这种关系就像妈妈肚子里怀的宝宝,宝宝生活在妈妈的肚子里,妈妈和宝宝都是人,是一种寄生关系。
2、运行环境:“虚拟机”在做“运行环境”讲的时候,指的是操作系统被安装一个支持其他软件包运行的软件。最明显的例子就是“Java虚拟机”。所谓“Java虚拟机”是一个安装在操作系统上的软件,用于支持用Java编程语言编写的软件包的运行。它负责给java程序分配资源,帮助java程序做一些底层的工作,让java程序在它搭建的环境里运行。这时Java虚拟机也是操作系统上的一个软件,其他java如阿健要依赖它才能运行。它是一个底层的支持环境。微软有个仿照java架构的开发环境,即.NET Framework。这里就没有使用“Virtual Machine(虚拟机)”这个术语,而是用了“Framework(框架)”。这两个词实际的意义是一样的,都是Runtime Environment(RE,运行时环境),但是可能Framework更容易理解。它就是一个框架,其他程序可以在这个框架的支持下运行。现在除了技术界,Java官方对公众也尽量使用JRE(Java Runtime Environment),而不是JVM(Java Virtual Machine)的概念了。
Android的架构是第二种“虚拟机”。Android最底层是Linux操作系统,在这个操作系统上安装了一个叫Davilk的Java虚拟机。用Java编写的各种应用在Davilk的支持下运行。
云OS的架构也是第二种“虚拟机”。云OS最底层是Linux操作系统,在这个操作系统上安装了一个阿里的Java虚拟机。用Java编写的各种应用在该虚拟机的支持下运行。
可见,Android和云OS下运行的都是JAVA程序,可以互相兼容。
- 虚拟机的2种解释
- Java虚拟机的相关解释
- dalvik虚拟机解释器高频解释代码的加速
- [笔记]Python虚拟机对函数的解释
- Java虚拟机,一种特殊的解释器
- 虚拟机网卡解释
- [笔记]Python虚拟机对if语句的解释
- 对于elcipse提示虚拟机创建失败的解释和解决
- Java虚拟机解释执行和JIT的关系
- 深入理解Dalvik虚拟机- 解释器的运行机制
- NPTL的解释 2
- Java的虚拟机一般是解释执行的,而CLR是编译执行
- 凭啥Java的运行环境称虚拟机,Python的只能称解释器
- 深入Java虚拟机之基于栈指令的解释器执行引擎
- context的三种解释
- 曲线拟合的几种解释
- 2个不太清楚的解释
- 2>&1 和 &> 的解释
- WLAN DRIVE
- EXCEL中VBA禁止与启用快捷键
- 网上邻居无法访问本机及打印机之解…
- Git Ubuntu下安装
- 通过修改注册表来修改默认浏览器
- 虚拟机的2种解释
- VBA 全角转半角
- 利用GetObject("WinMgmts:")获取系统信息
- EXCE中GET.CELL宏函数用法
- 继承C++
- EXCEL 批量导出图片
- Vlookup返回多个值 自定义函数
- 数据库--游标
- VBA字符串处理