虚拟化与多任务以及超线程有什么区别呢? 举报 理由 举报 取消 按定义解,虚拟化是指在一套硬件平台上,运行不同的,支持多任务的操作系统;多任务是指一个操作系统里支持多任务运行;超线程是指令单个CPU物理核心虚拟成若干逻辑核心。这几个技术互相之间应该有不同但紧密的联系吧 2017年8月12日 1 条回复 1080 次浏览 CPU,中央处理器,数据,服务器,虚拟,计算
回复 ( 1 )
你可以理解为它们是在不同的层面上提供对不同资源进行不同形式的“虚拟化”“:
1. 超线程在硬件层面上提供对物理 CPU Core 的虚拟化。对于其上的软件而言,每个虚拟的 CPU Core,即逻辑 CPU Core 提供和物理 CPU Core 大致相同的功能和性能。
2. 虚拟化可以理解为在操作系统内核层面上提供对宿主机上的所有硬件的虚拟化。对于其 (Hypervisor) 上所运行的操作系统内核和应用程序而言,每个虚拟化的硬件系统 (即虚拟机) 提供和实际的物理硬件大致相同的功能和性能。
3. 多任务也可以理解为在操作系统层面上的对硬件资源的虚拟化。与 2 中的虚拟化不同的是,对于运行在操作系统上的程序而言,多任务”虚拟化“出的是抽象的硬件资源,例如 CPU 可能被抽象为 CPU 时间,内存可能被抽象为虚拟地址空间等。