Для работы паравиртуализации устройств ввода-вывода в виртуальной машине Xen под управлением Windows необходима установка дополнительных драйверов. Однако, они могут сыграть злую шутку, когда возникает необходимость мигрировать такую машину на другой гипервизор.
При попытке запустить машину, перенесённую с Xen на KVM Windows отказывается грузиться, демонстрируя BSOD с кодом 0x0000007b, рапортуя о невозможности получить доступ к системному диску.
Для исправления этой проблемы нам потребуется доступ к реестру Windows на проблемной машине. Проще всего это сделать, конечно, пока она находится на Xen, но если такой возможности уже нет, то можно подключить нужный куст реестра из режима восстановления (встроенного в инсталляцию, или c установочного iso), либо с другой Windows системы.
Чтобы попасть в Recovery на Windows 7, нажмите F8 во время загрузки и выберите вариант Repair your computer. На Windows 8 и Windows 10 необходимо 3 (три) раза прервать процесс загрузки ОС сразу после возникновения логотипа окон (что в случае с BSOD произойдёт само).
Получив доступ к командной строке какой-либо Windows системы:
	- Запускаем редактор реестра regedit.exe
- Выбираем HKEY_LOCAL_MACHINE
- Жмём File -> Load Hive
- Выбираем файл реестра, находящийся на нашей проблемной машины по пути C:\Windows\System32\config\SYSTEM
- Задаём любое имя для временного раздела реестра, например Temp
- Теперь HKEY_LOCAL_MACHINE\SYSTEMс проблемной машины смонтирован вHKEY_LOCAL_MACHINE\Temp
- Не забываем сделать File -> Unload Hiveпо этой ветке после окончания работы
Для начала включим обратно поддержку AHCI и IDE, если вдруг это было переопределено установщиком драйверов Xen. Для этого:
	- Идём по пути HKEY_LOCAL_MACHINE\Temp\ControlSet001\Services\
- В разделах msahci,pciide,iaStor,iaStorV,iaStorAVCустанавливаем параметрStartв значение0.
 Примечание: в разных версиях Windows некоторых из данных разделов может не быть
- В разделах xenpci,xenvbd,xennetустанавливаем параметрStartв3
После этого необходимо убрать UpperFilters драйвера Xen для устройств. Для этого:
	- Идём по пути HKEY_LOCAL_MACHINE\Temp\ControlSet001\Control\Class\
- Жмём Edit -> Findи вводим илиUpperFilters, илиxen
- Проходимся по всем результатам с помощью F3
- Во всех найденных классах устройств, содержащих какие-либо драйверы от Xen в UpperFilters, просто удаляем параметр UpperFilters.
 Примечание: обычно этоxenpci,xenvbd,xennet, иxenhide.
 Если в UpperFilters было неколько значений,ПКМпо нему ->Modifyи удаляем строчки с xen
Вот неполный список классов устройств, где обычно встречаются драйвера паравиртуализации Xen:
	- HKEY_LOCAL_MACHINE\Temp\ControlSet001\Control\Class\{4D36E96A-E325-11CE-BFC1-08002BE10318}
- HKEY_LOCAL_MACHINE\Temp\ControlSet001\Control\Class\{4D36E97B-E325-11CE-BFC1-08002BE10318}
- HKEY_LOCAL_MACHINE\Temp\ControlSet001\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}
- HKEY_LOCAL_MACHINE\Temp\ControlSet001\Control\Class\{4D36E97D-E325-11CE-BFC1-08002BE10318}
Обязательно пройдитесь поиском после обследования данных классов.
После этого выгружаем куст HKEY_LOCAL_MACHINE\Temp (File -> Unload Hive) и перезагружаемся. Загрузка должна пройти штатно.
Стоит отметить, что имея доступ к загруженной машине, пока она ещё загружается и находится на Xen, стоит сперва попробовать удалить драйвера Xen с помощью штатной оснастки Программы и компоненты. Однако, по опыту, иногда он не чистит за собой указанные выше ветки реестра. Проверить успешность удаления можно сразу после завершения деинсталляции, не перезагружаясь.