操作系统与硬件虚拟化之间有什么关系吗 硬件虚拟化有什么用

来源:三秦科技网

操作系统虚拟化位于操作系统的顶部。这种方式能极大的提升许多计算环境的服务器整合率和资源利用率。当用户使用虚拟化产品和解决方案时,操作系统虚拟化都与层相关。层指的是虚拟化应用的级别。以应用程序为基础的硬件虚拟化解决方案包括对现有操作系统处理的层和直接在硬件顶部运行的层。这就是大家所熟悉的“裸机”。

早期的单任务模式

早期的计算机其实并没有操作系统的,因为操作系统本身也使靠计算机硬件执行的一种程序,操作系统就是一种可以提供给其它程序方便编写并运行的程序,由程序来运行程序,而不是自己来运行,这其实就是操作系统提供的最早的一种虚拟化表现。

对于早期的计算机来说,只能运行执行一个任务,整个计算机只能被这个程序独占,例如开机,从软盘或者其它介质上执行程序,直到执行完毕或者人为终端,执行完后拿出戒指,才能再次插入另一介质,重新载入执行另一个程序,而在执行过程中,一旦发生意外,只能重新运行。

操作系统的多任务模式

操作系统的出现解决了很多问题,操作系统本身就是一个程序,计算机家电之后,首先先运行的是操作系统,随时可以载入其它程序执行,也就是说,它可以随时的从软盘上读取其它程序的代码,并切换到这段带马上让CPU执行,执行完毕后则立即切换回操作系统笨死,但是每次也总是要等待这个程序执行完毕,才能接着载入下一个程序执行。当被载入的程序执行的时候,不能做任何其它事情,暴扣操作系统本身的程序模块,任何产生中断的时间,都会中断正在运行的程序。

程序执行完毕之后,会将CPU使用权归还操作系统,从而继续操作系统本身的运行,这种操作系统成为单任务操作系统,典型代表就是DOS。

如今操作系统针对系统时钟中断,开发了专门的中断服务器程序,也就是多任务操作系统中的调度程序,时钟中断到来的时候,CPU根据中断向量表的内容,指向调度程序所在的地址入口,执行调度程序的代码,调度程序所做的就是将CPU的执行跳转到各个应用程序所在的内存地址入口,每次中断后,调度程序以一定的优先级,指向不通过的程序入口,这样就能做到极细粒度的应用程序入口切换,如果遇到某个程序还没执行完毕就切被切出了,则操作系统会自动将这个程序运行状态保存起来,待下次轮到的时候,提取出来继续运行。

通过这样的虚拟化,运行在操作系统之上的所有程序都会认为自己是独占一代计算机的硬件运行。

虚拟化的好处

上面介绍的计算机硬件及操作系统,其实计算机系统从诞生起就在不断的进行这虚拟化的过程,时至今日,计算机虚拟化进程依然在飞快的发展。

虚拟化的好处显而易见,虚拟化将下层的复杂逻辑转变为上层的简单逻辑,方便人类读懂,也就是说“科技,以人为本”。任何技术,都是为了将上层逻辑变得更加简单,而不是越变越复杂,当然使上层越简单,下层就要做更多的工作,就越复杂。

虚拟化的作用有:

1. 减少服务器的数量,提供一种服务器整合的方法,减少初期硬件采购成本

2. 简化服务器的部署、管理和维护工作,降低管理费用

3. 提高服务器资源的利用率,提高服务器计算能力

4. 通过降低空间、散热以及电力消耗等途径压缩数据中心成本

5. 通过动态资源配置提高IT对业务的灵活适应力

6. 提高可用,带来具有透明负载均衡、动态迁移、故障自动隔离、系统自动重构的高可靠服务器应用环境

7. 支持异构操作系统的整合,支持老应用的持续运行

8. 在不中断用户工作的情况下进行系统更新

9. 支持快速转移和复制虚拟服务器,提供一种简单便捷的灾难恢复解决方案

扩展资料:

虚拟化这种技术简单来说就是让可以让一个CPU工作起来就像多个CPU并行运行,从而使得在一台电脑内可以同时运行多个操作系统。只有部份Intel 的CPU才支持这种技术。

IntelVT虚拟化技术和多任务(Multitasking)、Hyper-Threading超线程技术是完全不同的。多任务是指在一个操作系统中多个程序同时并行运行,而在虚拟化技术中,你可以拥有多个独立的操作系统同时运行,每一个操作系统中都有多个程序运行,每一个操作系统都运行在一个虚拟的CPU或虚拟主机(虚拟机)上。而Hyper-Threading超线程只是在SMP系统(SymmetricMultiProcessing)中单CPU模拟双CPU来衡程序运行能,这两个模拟出来的CPU是不能分离的,只能协同工作。

当然了,如果一个CPU同时支持Hyper-Threading和虚拟化技术的话,每一个虚拟CPU在各自的操作系统中都被看成是两个对称多任务处理的CPU。

标签: 操作系统 内核模式 现代驱动 应用程序

推荐

财富更多》

动态更多》

热点