Возможно, объяснение между графикой в виртуальном гостевом и фактическом хосте O / S поможет здесь.
Все в виртуальном гостю - это абстракция - что это означает, что каждое устройство и драйвер в виртуальном гостевом O / S не зависит от фактического хост-устройства & amp; драйвер.
Чтобы дать вам простой пример. Мышь рассматривается как конкретное устройство - ядро Linux видит это устройство и позволяет гостевой операционной системе использовать это устройство. Это «виртуальное устройство» сопоставляется с реальным физическим устройством с помощью инструмента виртуализации - VirtualBox, VMWare, Xen и т. Д. Таким образом, гостевая операционная система никогда не должна понимать, что такое физическая мышь, она видит только то, что инструмент виртуализации сопоставил с ней , Значение этого подхода состоит в том, что вы можете переместить виртуального гостя на разные хосты - он будет работать таким же образом, потому что нет прямой зависимости от самого хоста.
Чтобы показать это на практике, вы можете запускать lsusb как на хосте, так и на гостях - на моем хосте O / SI есть следующие USB-устройства:
Bus 002 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0402:9665 ALi Corp.
Bus 001 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
На моем гостю oneiric O / SI может видеть следующие USB-устройства - они отличаются от host:
Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 002: ID 80ee:0021 VirtualBox USB Tablet
Любой гостевой O / S, будет ли Windows или Linux видеть это виртуальное гостевое устройство.
It то же самое для графики.
Моя графическая схема хоста:
sudo lshw -class display
*-display
description: VGA compatible controller
product: Core Processor Integrated Graphics Controller
vendor: Intel Corporation
physical id: 2
bus info: pci@0000:00:02.0
version: 18
width: 64 bits
clock: 33MHz
capabilities: msi pm vga_controller bus_master cap_list rom
configuration: driver=i915 latency=0
resources: irq:41 memory:90000000-903fffff memory:80000000-8fffffff ioport:3050(size=8)
На моем гостевом персонаже O / S он может видеть следующую графическую карту - вы можете видеть, что это не то же самое, что и хост: [ ! d10]
sudo lshw -class display
*-display UNCLAIMED
description: VGA compatible controller
product: VirtualBox Graphics Adapter
vendor: InnoTek Systemberatung GmbH
physical id: 2
bus info: pci@0000:00:02.0
version: 00
width: 32 bits
clock: 33MHz
capabilities: vga_controller bus_master
configuration: latency=64
resources: memory:e0000000-e7ffffff
Аналогично - гостевой O / S Windows будет видеть только подобное виртуальное гостевое устройство.
В мутном мире VirtualBox, гостевые дополнения, которые вы можете вручную установить (или в 11.10 - жокей видит и рекомендует его устанавливать) устанавливает дополнительные модули ядра (или драйверы устройств для Windows гостей), чтобы обеспечить гостевой O / S расширенный доступ к графике O / S вашего хоста. Опять же, это не прямое отображение - но позволяет видеть 3D-ускоренную графику.
Если приложение внутри вашей виртуальной машины использует 3D-функции через интерфейс программирования OpenGL (или для гостевого O / S Windows - его вызовы DirectX), вместо эмуляции их в программном обеспечении (которое будет медленным) VirtualBox попытается использовать 3D-оборудование вашего хоста.
Снова я подчеркиваю, что гость O / S не видит вашу фактическую графическую карту, он просто передает вызов OpenGL (или DirectX) от Гостя непосредственно на аппаратное обеспечение Host для обработки.
В настройках VirtualBox вы должны изменить память видеокарты и установку 3D-видеокарты. Затем ваш гостевой O / S увидит «3D-ускоренную карту» с 128 Мб ОЗУ. Не имеет значения, лучше ли ваша видеокарта вашего хозяина - ваш гость O / S увидит эту «простую» абстрактную виртуальную видеокарту.
Поскольку вы упомянули, что используете гостевой O / S для Windows, флажок 2D применим к вам, так как выполняется аналогичное Guest Additions для вызовов интерфейса программирования.
Bumblebee / IronHide - это механизм переключения / или графика - вы используете либо интегрированный графикой или графикой NVIDIA / ATI с более высокой пропускной способностью, но не одновременно.
Поскольку возможности OpenGL (или DirectX) для более высокой коммутируемой графики больше, чем встроенные чипы, вы увидите относительно улучшенная производительность графики с приложениями для гостевой O / S-графики. Однако это улучшение не так драматично, как запуск одного и того же приложения на хосте, поскольку он все еще работает в рамках ограничений графического устройства виртуального гостя 128 МБ.
source