【问题标题】:How to determine virtual machine type from guest OS X from C++?如何从 C++ 确定来宾 OS X 的虚拟机类型?
【发布时间】:2015-02-12 14:25:26
【问题描述】:

如何从来宾 OS X 中确定虚拟机类型?

设置如下。 主机操作系统是 OS X,客户操作系统也是 OS X。 以及以下虚拟机之一 VMware Fusion、Parallels 或 Virtual Box。

是否可以通过 C++ 代码以编程方式检测虚拟机类型?

我只有 VMware Fusion 的解决方案。 cpuid 汇编程序命令返回 CPU 供应商的 VMwareVMware 字符串。所以很容易。

但是 Parallels 和 Virtual Box 呢? 我完全不知道。

【问题讨论】:

    标签: macos virtual-machine virtualbox parallels vmware-fusion


    【解决方案1】:

    我并行运行 ubuntu,许多设备报告为由 Parallels, Inc. 制造。例如:

    user@ubuntu:~$ lspci | grep Parallels
    00:03.0 Unassigned class [ff00]: Parallels, Inc. Virtual Machine Communication Interface
    01:00.0 VGA compatible controller: Parallels, Inc. Accelerated Virtual Video Adapter
    

    在 OS X 中,system_profiler 命令会返回大量有关您系统的信息。我没有虚拟机来测试这个,但我猜是

    system_profiler | grep Parallels
    

    会让你走上正轨。

    【讨论】:

    • 是的。 system_profiler -detailLevelFull 返回包含大量信息的庞大报告。明天我将在 Parallels 环境中检查它。但实际上我想从 C++ 代码中以编程方式获取他的信息。我检查了 opensource.apple.com。不幸的是没有system_profiler源代码((
    猜你喜欢
    • 2021-11-27
    • 1970-01-01
    • 2013-03-18
    • 1970-01-01
    • 1970-01-01
    • 2012-12-26
    • 2013-09-26
    • 1970-01-01
    • 2014-07-26
    相关资源
    最近更新 更多