【问题标题】:Virtual Processors and Logical Partitions虚拟处理器和逻辑分区
【发布时间】:2010-11-09 19:55:19
【问题描述】:

我基本上想知道虚拟处理器到底是什么。在 IBM 的网站上,他们将其定义为:

“虚拟处理器是物理处理器内核对使用共享处理器的逻辑分区的操作系统的表示。”

我知道如果有 x 个处理器,每个处理器可以同时执行两个操作,那么系统可以同时执行 2x 个操作。但是虚拟处理器在哪里适合这个。我尝试查找逻辑分区和其他分区(例如主分区)之间的区别,但并不确定。

【问题讨论】:

    标签: processors


    【解决方案1】:

    我想在虚拟内存和虚拟处理器之间做一个类比。

    从期望开始:

    • 用户程序是根据一组关于内存外观的预期编写的(nice扁平、大、连续的内存模型是最好的......)
    • OS 系统是针对硬件执行方式的一组预期编写的(哪些 CPU 保护模式操作可用、中断如何到达以及如何被阻止和处理、如何与 IO 设备通信等...)李>

    意识到可以通过硬件或抽象层直接满足期望

    • 虚拟内存是一组(专门的,在简单芯片中找不到的)硬件工具和操作系统服务,它们可以假装用户程序认为它具有良好、平坦、大、连续的内存空间,即使操作系统很忙将真实内存分成小块,并将其中一些存储在磁盘上,将其他的带回来,否则对其进行真正的哈希处理。但是你的代码并不关心。一切正常。
    • 虚拟处理器系统是一组(专用的,在消费类 CPU 中不存在)硬件工具和虚拟机管理程序服务,可让您的操作系统相信它可以直接访问具有预期保护模式、中断等的一个或多个处理器。即使管理程序忙于将整个操作系统上下文交换到一个或多个真实处理器上或从一个或多个真实处理器上交换下来,开始和停止对 IO 总线的访问等等。但是 OS 不在乎。一切正常。

    执行此操作的硬件支持是最近才开始在“桌面”CPU 中提供的,但 Big Iron 已经拥有它很长时间了。它之所以有用有几个原因

    1. 保护。在适当保护的操作系统中,一个进程或用户很难监视另一个进程或用户。但是由于它们可以驻留在相同的上下文中,所以它仍然是可能的。虚拟化操作系统将它们划分为另一个更薄的通道,使数据泄漏和恶意行为变得更加困难。
    2. 稳健性。如果您可以将操作系统上下文交换进出,您可以将它们从一台机器迁移到另一个机器并检查点并重新启动。这允许计算机在自己的处理器上检测故障并正常恢复。

    这些东西(除了数百万 LOC 的大量调试的关键任务代码)让人们为 Big Iron 买单。

    【讨论】:

      猜你喜欢
      • 2014-02-23
      • 2020-11-09
      • 2021-04-27
      • 1970-01-01
      • 2015-12-26
      • 2016-07-28
      • 2012-02-01
      • 2012-11-19
      • 2015-03-14
      相关资源
      最近更新 更多