Интерфейс паравиртуализации virtualbox для linux

Как выбрать интерфейс паравиртуализации в VirtualBox?

Учитывая хост-систему Windows 8 (Intel Core i5) и хост Linux Fedora, я бы хотел определить оптимальные настройки для паравиртуального интерфейса.

Эта страница предлагает выбрать только на основе гостевой системы:

Самым большим изменением в VirtualBox 5.0 является поддержка паравиртуализации, обеспечивающая более высокую производительность и точность учета времени в поддерживаемых гостевых операционных системах (Hyper-V в Windows и KVM в Linux).

В руководстве VirtualBox в разделе, озаглавленном « Поставщики паравиртуализации», очень четко объясняется, когда следует использовать каждый из них (выделение добавлено):

Минимальный: объявляет о наличии виртуальной среды. Кроме того, сообщает частоту TSC и APIC гостевой операционной системе. Этот поставщик обязателен для запуска любых гостей Mac OS X.

KVM: представляет интерфейс гипервизора Linux KVM, который распознается ядрами Linux начиная с версии 2.6.25. Реализация VirtualBox в настоящее время поддерживает паравиртуализированные часы и спин-блокировки SMP. Этот провайдер рекомендуется для гостей Linux.

Hyper-V: представляет интерфейс гипервизора Microsoft Hyper-V, который распознается Windows 7 и более новыми операционными системами. Реализация VirtualBox в настоящее время поддерживает паравиртуализированные часы, отчеты о частоте APIC, гостевую отладку, сообщения о сбоях гостей и ослабленные проверки таймера. Этот провайдер рекомендуется для гостей Windows.

Другие параметры в раскрывающемся списке делают следующее, как описано в vboxmanage документации :

Нет : указание none явно отключает показ любого интерфейса паравиртуализации.

По умолчанию : опция default выберет соответствующий интерфейс в зависимости от типа гостевой ОС при запуске виртуальной машины. Это опция по умолчанию, выбранная при создании новых виртуальных машин.

Legacy : эта legacy опция выбрана для виртуальных машин, которые были созданы с более старыми версиями VirtualBox, и выберет интерфейс паравиртуализации при запуске виртуальной машины с VirtualBox 5.0 и новее.

Давайте будем более точными, потому что у меня было 4,3 перенесенных виртуальных машин, и они являются «устаревшими», также меня интересовало, какой параметр использовать, если я копирую виртуальную машину из Linux в Windows или наоборот:

—paravirtprovider none | default | legacy | minimal | hyperv | kvm: Этот параметр указывает, какой интерфейс паравиртуализации следует предоставлять гостевой операционной системе.

  • Указание none явно отключает показ любого интерфейса паравиртуализации.
  • Опция default выберет соответствующий интерфейс в зависимости от типа гостевой ОС при запуске виртуальной машины. Это опция по умолчанию, выбранная при создании новых виртуальных машин.
  • Наследие выбрана опция для виртуальных машин , которые были созданными с более старым VirtualBox версией и подберут интерфейс паравиртуализации при запуске ВМ с VirtualBox 5.0 и новее.
  • Минимальный поставщик является обязательным для гостей Mac OS X ,
  • kvmрекомендуется для гостей Linux
  • и hypervрекомендуется для гостей Windows

Эти параметры подробно описаны в разделе 10.4 « Поставщики паравиртуализации ».

Поэтому, если вы обновили VirtualBox до версии 5 в Linux, просто выберите kvm или default , запустите VM и проверьте, работает ли он правильно. Если да, просто оставьте новую настройку.

Если вы мигрируете / перемещаете виртуальные машины из Linux в Windows, я рекомендую использовать опцию по умолчанию , которая автоматически выбирает лучший интерфейс виртуализации.

Просто мю до центов, основываясь на моих собственных тестах.

Я тестировал с гостем Windows 10, работающим на хосте Windows 10 и на хосте Linux (или, по крайней мере, я пробовал).

Не говоря уже о том, что все виртуальные диски, которые я использую, являются неизменяемыми (для обеспечения идентичных тестов).

На хосте Windows 10 гость работает нормально (возможно, немного медленно), но он загружается и отображается рабочий стол . паравиртуализация «по умолчанию».

Если я пытаюсь использовать ту же виртуальную машину на хосте Linux с паравиртуализацией «по умолчанию», то гостевая система Windows 10 не загружается, она загружается до тех пор, пока точки не перемещаются по кругу, а затем через некоторое время зависает . нет возможности войти ни в логин, ни в рабочий стол. .. помните, что все диски являются неизменными.

Читайте также:  Лагает система windows 10

Но как только я установил для паравиртуализации значение «Heredada» (по-испански), он загружается и достигает рабочего стола, но иногда (помните, что все диски являются неизменяемыми), он перезагружается, в то время как в других случаях я могу использовать его (очень, очень медленно). Так что где-то должен быть скачок, грешить неизменными дисками, он не всегда делает то же самое.

Да, кстати, у гостя Windows нет доступа к Интернету, чтобы быть уверенным, что никакое подключение к Интернету не может заставить вещи работать по-другому среди холодных сапог.

  • Все диски неизменны
  • Все возвращаются обратно при каждой холодной загрузке
  • Гость Windows не всегда работает
  • При паравиртуализации по умолчанию он даже не загружается на хосте Linux, но хорошо загружается на хосте Windows.
  • При паравиртуализации на «Heredada» он загружается на хосте Linux (но он не всегда стабилен, чтобы позволить вам его использовать)

Я также попытался включить / отключить 2D и 3D (также PAE / NX), потому что я хочу, чтобы один и тот же гость (виртуальные жесткие диски, скопированные с одного хоста на другой) был стабильным на двух разных хостах; также я хочу иметь возможность копировать виртуальные жесткие диски с одного хоста на другой хост после того, как я сделаю какое-либо обновление (перед холодной загрузкой объедините неизменяемый диск с его родителем, чтобы сделать изменения постоянными и не потеряться, иначе говоря, используя CloneVDI); Я не использую снимки, только неизменяемые диски.

Это то, что я видел, я должен делать больше тестов с другими значениями паравиртуализации, на тот случай, если кто-нибудь лучше работает на хосте Linux. Я не использую ни MAC, ни OS / 2, только хост Windows и хост Linux (оба хоста находятся на разном физическом оборудовании).

ВЕРСИЯ: Гостем Windows 10 является HOME 64Bits, версия 1809.17763.379

Надеюсь, что это поможет другим, протестировать и протестировать и повторно протестировать (лучше с неизменяемыми дисками) любую комбинацию значений, пока не найдется одна комбинация, которая работает, кажется, что это единственный способ заставить гостя работать на разных типах хостов (Windows / Linux)! !!

Источник

Интерфейс паравиртуализации virtualbox для linux

OracleВ® VM VirtualBox

Administrator’s Guide for Release 6.0

3.4.В Paravirtualization Providers

Oracle VM VirtualBox enables the exposure of a paravirtualization interface, to facilitate accurate and efficient execution of software within a virtual machine. These interfaces require the guest operating system to recognize their presence and make use of them in order to leverage the benefits of communicating with the Oracle VM VirtualBox hypervisor.

Most modern mainstream guest operating systems, including Windows and Linux, ship with support for one or more paravirtualization interfaces. Hence, there is typically no need to install additional software in the guest to take advantage of this feature.

Exposing a paravirtualization provider to the guest operating system does not rely on the choice of host platforms. For example, the Hyper-V paravirtualization provider can be used for VMs to run on any host platform supported by Oracle VM VirtualBox and not just Windows.

Oracle VM VirtualBox provides the following interfaces:

Minimal : Announces the presence of a virtualized environment. Additionally, reports the TSC and APIC frequency to the guest operating system. This provider is mandatory for running any Mac OS X guests.

KVM : Presents a Linux KVM hypervisor interface which is recognized by Linux kernels version 2.6.25 or later. Oracle VM VirtualBox’s implementation currently supports paravirtualized clocks and SMP spinlocks. This provider is recommended for Linux guests.

Hyper-V : Presents a Microsoft Hyper-V hypervisor interface which is recognized by Windows 7 and newer operating systems. Oracle VM VirtualBox’s implementation currently supports paravirtualized clocks, APIC frequency reporting, guest debugging, guest crash reporting and relaxed timer checks. This provider is recommended for Windows guests.

Copyright В© 2004, 2020 Oracle and/or its affiliates. All rights reserved. Legal Notices

Читайте также:  Inactive title windows 10

Источник

Как включить вложенную виртуализацию Nested VT-x/AMD-v в VirtualBox

Вложенная виртуализация – это функция, которая позволяет запускать виртуальные машины внутри виртуальных машин. Например, допустим, есть необходимость в запуске виртуальной машины с операционной системой CentOS с использованием Oracle VirtualBox в вашей виртуальной системе Ubuntu Linux. Если в Ubuntu включена функция вложенной виртуализации – Nested VT-x/AMD-v, вы можете установить Virtualbox или KVM на виртуальной машине CentOS и запустить другие виртуальные машины внутри нее. Таким образом, в основном это метод запуска среды виртуализации в другой среде виртуализации.

Начиная с версии 6.1, Oracle VM VirtualBox поддерживает функцию вложенной виртуализации на хост-системах с процессорами AMD и Intel. Поэтому убедитесь, что у вас установлена последняя версия Virtualbox.

Для процессоров Intel вложенная виртуализация недоступна из графического интерфейса программы, но ее можно включить с помощью командной строки.

Как включить вложенную виртуализацию Nested VT-x VirtualBox в системах в Microsoft Windows

Вложенная виртуализация включается отдельно для каждой виртуальной системы.

Открываем Командую строку (cmd.exe) от имени Администратора и выполняем следующие команды.

Переходим в директорию установленной программы в Program Files:

Выводим список виртуальных систем с помощью команды:

Выбрав точное название виртуальной системы, подключаем вложенную виртуализацию:

В данном случае вложенная виртуализация была подключена для виртуальной системы Ubuntu 20.04.

Проверим включение вложенной виртуализации в графическом интерфейсе VirtualBox. Откройте VirtualBox, выберите виртуальную машину и перейдите в меню Настроить > Система > Процессор.

Отныне эта виртуальная машина будет действовать как гипервизор, так что вы можете запускать виртуальные машины внутри нее.

Как включить вложенную виртуализацию Nested VT-x/AMD-v в VirtualBox в системах GNU/Linux

Открываем Терминал и выполняем следующие команды.

Для отображения списка виртуальных систем:

Для включения вложенной виртуализации:

Теперь в виртуальной системе вы можете установить VirtualBox и в нем установить еще одну виртуальную машину.

Источник

Выбор интерфейса паравиртуализации в Virtualbox для максимальной производительности

Введение

Здравствуйте, уважаемые посетители. Не так давно вышла новая версия Oracle VM VirtualBox, где добавили возможность выбора интерфейса паравиртуализации для виртуальной машины. Данная функция преподносится как возможность повышения производительности гостевой операционной системы. Меня этот момент очень сильно заинтересовал. В особенности заинтересовало то, как сказывается на работе гостевой ОС выбор разных интерфейсов, а также то, какой именно интерфейс паравиртуализации нужно выбирать для обеспечения максимального быстродействия гостевой операционной системы Windows 7 x64.

Операционные системы Windows, начиная с Windows 7, поддерживают интерфейс Microsoft — Hyper-V, так что вполне логично, что для работы гостевой ОС Windows 7 x64 нужно выбирать именно его. Тем не менее, мне захотелось узнать, как будет влиять на производительность гостевой ОС каждый из доступных в VirtualBox интерфейсов паравиртуализации. Я начал искать в интернете информацию на эту тему, однако не нашёл нужных мне результатов, поэтому решил провести тестирование самостоятельно, о результатах которого и пойдёт речь в этом посте.

На данный момент, для виртуальной машины можно выбрать один из доступных интерфейсов: совместимый, минимальный, Hyper-v, KVM или же отключить его вовсе:

В справке к VirtualBox указано, что большинство современных ОС Windows и ОС на базе ядра Linux поддерживают один или несколько интерфейсов паравиртуализации и как правило, для использования паравиртуализации не требуется дополнительное программное обеспечение (включая в том числе и дополнение для гостевых ОС VirtualBox Guest Additions). Помимо этого, в справке можно найти краткое описание интерфейсов. Минимальный указывается как необходимый для операционных систем Mac OS X. KVM — рекомендуется для гостевых ОС на базе ядра Linux. Hyper-V — поддерживается операционными системами Microsoft, начиная с Windows 7, соответственно для них и рекомендуется его использовать, а также для ОС FreeBSD.

Методика тестирования

В качестве операционной системы хоста использовалась Windows 7 x64, эта же версия использовалась в качестве гостевой ОС. Версия VirtualBox — последняя на момент написания поста — 5.0.2. Для тестирования мною была создана отдельная виртуальная машина со следующими настройками:

Как видите, я выделил виртуальной машине 2000 МБ памяти из имеющихся 4 ГБ и все четыре процессорных ядра. Помимо этого, включил 2D и 3D ускорение видео, всё для того, чтобы гостевая ОС Windows 7 x64 чувствовала себя как можно лучше.

Читайте также:  Autodesk revit mac os

Для измерения производительности использовались следующие программы: Intel linpack x64, тест производительности, встроенный в программу 7-zip x64, AIDA64 — тест быстродействия оперативной памяти, Xvid4PSP — кодек x264 64-bit.

Тестирование производилось следующим образом: я запускал виртуальную машину с определённым интерфейсом паравиртуализации, выполнял последовательно все тесты, сохраняя результаты. После виртуальная машина отключалась и запускалась вновь, но уже с другим интерфейсом, при этом все остальные настройки оставались неизменными. Все тесты также были выполнены и в операционной системе хоста, чтобы можно было сравнить результы и определить на сколько процентов отличается производительность. При этом отмечу, что все процессы, кроме необходимых для работы ОС, были остановлены как в гостевой, так и в операционной системе хоста, дабы нивелировать влияние посторонних факторов на результаты теста.

Результаты тестирования

Intel linpack x64

Первый выполнявшийся тест — бенчмарк Intel linpack x64. В настройках бенчмарка был указан объём теста 10000 уравнений, тест запускался пятикратно, на графике отображён усреднённый результат пяти тестов (Average) и максимальный (Maximal) зафиксированный результат в GFlops:

Как видим, между хостом и гостевыми ОС наблюдается значительный разрыв в производительности. Наилучший результат показал интерфейс паравиртуализации Hyper-V — 32,58 GFlops в среднем и 33,31 GFlops максимум, отставание производительности по сравнению с хостом составило — 10%. Однако разница между Hyper-V и остальными интерфейсами, кроме KVM, совершенно незначительная. Низкие результаты при работе ОС с интерфейсом KVM обусловлены тем, что производительность значительно падала через несколько минут после запуска ОС, несмотря на то, что в первые минуты её работы, она практически не отличалась от других интерфейсов — это можно определить по максимальному зафиксированному результату с интерфейсом KVM — 32,74 GFlops. Аналогичные провалы производительности были получены и в других тестах, при работе гостевой ОС с активированным интерфейсом KVM.

7-zip x64

Тест производительности в программе 7-zip запускался вручную пятикратно. Результаты всех пяти тестов были усреднены для большей точности:

Лучший результат опять показывает Hyper-V — 9097 MIPS. При этом разница в производительности между ним и хостом уже более существенная, чем в предыдущем тесте — 16%. Остальные интерфейсы, кроме KVM, дали результат не сильно отличающийся друг от друга.

AIDA64 — тест быстродействия оперативной памяти

Следующий тест — быстродействие оперативной памяти в программе AIDA64 уже более интересен. Тестирование выполнялось путём трёхкратного запуска бенчмарка, полученные результаты усреднены. На диаграмме отображены результаты теста по трём параметрам — чтение, запись и копирование в оперативной памяти:

Из результатов видно, что все интерфейсы, кроме KVM показали производительность уровня хоста. Что самое интересное, лучший результат показала ОС при работе как раз таки с отключенным интерфейсом паравиртуализации (Read, Copy), впрочем, разница соверешенно незначительна — менее трёх процентов. Примечательно, что результаты при работе ОС с интерфейсом Hyper-V получились более низкими по сравнению с отключенным интерфейсом паравиртуализации, а также совместимым и минимальным. Как бы там ни было, разница не столь существенная.

Кодирование видеофрагмента кодеком x264 64-bit

Для тестирования использовалась программа Xvid4PSP, версия 5.10.330.0_(2013-03-21)_rc33.1.Кодирование осуществлялось 64-bit версией кодека x264. Видеофрагмент для кодирования — видеозапись с цифровой камеры, закодированная кодеком MJPEG, длительность 62 секунды. Кодирование осуществлялось один раз, поскольку последующие запуски давали точно такой же результат, секунда в секунду. Результаты на диаграмме:

Кодирование видео уже более приближено к реальной работе, нежели синтетические тесты быстродействия, посему эти результаты лично для меня наиболее интересны. Быстрее всего выполнил кодирование конечно же хост, всего за 86 секунд. На втором месте по скорости — Hyper-V, кодирование выполнено за 134 секунды, что более чем в полтора раза дольше, но тем не мнее значительно быстрее, чем результаты при работе с другими интерфейсами. Для сравнения, разница в производительности между Hyper-V, совместимым и минимальным интерфейсами, составила целых 7 процентов, что уже можно назвать существенной разницей.

Результаты этих тестов подтвердили, что для работы гостевой ОС Windows 7 x64 необходимо использовать интерфейс паравиртуализации Hyper-V для достижения максимальной скорости работы. Но, вместе с тем, показали, что разница в производительности будет не всегда значительной.

Источник

Оцените статью