Фон:

В прошлом, когда моя гостевая виртуальная машина зависала, я смотрел на диспетчер задач Windows и видел очень мало оперативной памяти. Это привело меня к выводу, что «хост поместил виртуальную машину из физической памяти в виртуальную память (т.е. подкачку страниц) -> поэтому виртуальная машина зависла, потому что теперь у нее заканчивалась подкачка вместо физической памяти».

Текущий:

Совсем недавно моя гостевая виртуальная машина зависла и, глядя на диспетчер задач, обнаружила, что было достаточно "доступной памяти" в 1,2 ГБ. Я приложил скриншот моего компьютера с Windows и гостевой виртуальной машины Fedora 14.

Диспетчер задач хоста и Диспетчер задач гостя

Мои наблюдения:

  • хост имеет много доступной памяти (1,2 ГБ)
  • у гостя много свободной памяти
  • скриншот гостя ... доступен только потому, что он был совершенно случайно сверху и видим
  • ЦП хоста привязан к 2/4 ядрам
  • гостевой процессор вообще не привязан

Я закрыл виртуальную машину, и диспетчер задач моего хоста показал:

  • объем доступной физической памяти увеличился на тот же объем памяти, который выделен для гостевой виртуальной машины
  • пейджинг уменьшился на столько же памяти, сколько выделено для гостевой виртуальной машины
  • Использование ЦП перешло от сверхвысокой до почти ничего

Учитывая описание, почему вы думаете, что гостевая ВМ застыла? Я просто не могу понять это, и у меня нет никаких инструментов отладки, чтобы увидеть, в чем проблема!

  • Есть ли какой-то способ показать, что процесс "virtualbox" активно использует жесткий диск (т. Е. Теперь процесс находится в подкачке вместо физической памяти?
  • Как бы я показал, что виртуальный ящик "застрял в пейджинге"?
    • (Я слышал о perfmon ... но не смог разобраться. Поэтому, пожалуйста, уточните больше, чем "используйте perfmon" и скажите, на какие счетчики посмотреть)

2 ответа2

1
  1. Проверьте журналы в виртуальной машине Fedora, чтобы увидеть, объясняет ли что-нибудь зависание.

  2. Пейджинг не должен быть проблемой - нет причины, по которой гость не может пейджировать, а пейджинг на хосте просто не заморозит гостя.

  3. Пожалуйста, опубликуйте номер версии VirtualBox, который вы используете. То, о чем вы пишете, звучит для меня как ошибка VB, а не как проблема ОС.

0

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

Вот конфигурация, которая не останавливается:

  • ОС HOST: Windows 7 64-разрядная (ранее: Windows XP 32-разрядная)
  • ОС HOST: 8 ГБ доступной памяти (ранее: 3 ГБ в Windows XP 32 бит)
  • Гостевая ОС: 1 CPUS/ ядро (Ранее: 2 CPUS/ ядро)
  • ОС HOST: VirtualBox версия 4.0.8
  • ХОЗЯЙСТВЕННАЯ МАШИНА: Выключена гиперпоточность

Моя внутренняя реакция на "что вызвало замерзание?"». Вот две вероятные причины:

  1. Я думаю, что недостаток памяти вызвал замораживание.
    • Хост-ОС помещала гостевую ОС в пейджинг ... а затем гостевая ОС технически не зависала ... она стала очень медленной.
  2. ИЛИ Использование двух ядер в гостевой ОС вызвало странное зависание в ВМ.
    • Я думаю, что это гораздо менее вероятно. Потому что я использовал 2 ядра (меньше, чем общее количество хост-машины)... что хорошо поддерживается в VirtualBox.

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .