云计算中的虚拟化是什么意思?-薪享宏福

虚拟化是云之基石,是云实现的底层技术支撑(www.zhituo.net)。虚拟化是在程序直接调用硬件接口的环境下,中间插入一层虚拟化层,将物理资源通过虚拟化软件模拟硬件接口,欺骗上层的操作系统或者应用,达到共享物理硬件的目的。

无论是操作系统,还是其他应用程序,都需要依赖外部接口。这种基于接口的设计为虚拟化提供了理论基础。通常,操作系统并不感知使用的接口到底是来自真实的物理硬件,还是虚拟化软件,只要其符合接口规范即可,例如,任何实现了USB2.0规范的设备都可以被操作系统的驱动识别,无论它是物理U盘,还是通过磁盘模拟的虚拟设备。

虚拟化的应用并不仅仅是在云计算领域,从软件运行层次上看,每个地方都能看到虚拟化的影子。在硬件方面,当前的主流CPU都支持硬件辅助虚拟化,通常大部分客户机的指令都可以直接在宿主机的CPU上面运行,只有特权指令才需要CPU和虚拟化软件做特殊处理。

假设我们熟悉Docker,对操作系统层次的虚拟化就不需要做过多解释,namespace、cgroup、pivot_root等技术可以在一个操作系统之上模拟出多个运行环境。

喜欢hack的朋友对函数库的虚拟化应该深有感触。在Linux系统上面运行的QQ是多么糟糕,那么怎样在Linux上面运行Windows版QQ呢?通过Wine可以将Linux的函数库包装成Windows函数库,从而在Linux上面运行Windows的应用程序。应用程序虚拟化最典型的就是JVM,通过JVM可以做到Java代码的一次编译,处处运行。

一方面JVM去适配各种操作系统的API,另一方面提供JVM的规范,任何符合JVM规范的程序都可以在JVM里面运行,如Java、SCALA等,无论是CPU指令的虚拟化,还是应用程序的虚拟化,都是遵循一种契约和接口规范。

公司名称:苏州昆航智能机械科技有限公司
主营产品:自动喷砂机,移动喷砂机,手动喷砂机,清洗房