XEN-ядро не является основной проблемой здесь. Необходимо принести Hyper-V-disk-module в initrd.
После этого необходимо удалить все ссылки на xvda (и т.п.) и заменить их sda (и т.п.) в Загрузчике, Личинке и/etc/fstab "старого" DomU.
С ядрами, более новыми, чем 2.6.32, это - мир пирога - так как господствующая тенденция Linux содержит эти модули.
До этого необходимо скомпилировать эти модули для ядра.
Вот хорошая начальная точка в Microsoft Technet о той теме.
Если приложение-нарушитель открывает только узлы устройств в дереве / dev
, вы можете разместить узел устройства в другом месте, если это работает с вашей собственной программой.
В файловой системе, в которой находится узел устройства, должна быть установлена опция монтирования dev
, чтобы иметь особую обработку файлов узла устройства как таковых.
(Отказ от ответственности: я не тестировал это, но делал подобные вещи раньше ...)
Одним из примеров может быть установка небольшой файловой системы tmpfs
, например, на / my-dev /
и создайте там узел устройства.
mkdir -p /my-dev
mount -t tmpfs -o dev,size=<size> tmpfs /my-dev
mknod /my-dev/spi <type> <maj> <min>
где
- это размер tmpfs,
- это тип узла устройства, а
- основные : второстепенные номера устройств; см. справочные страницы для mount
и mknod
соответственно.
... А затем используйте fopen ("/ my-dev / spi")
в своей программе.
(И, конечно же, убедитесь, что udev
или аналогичный не создает узел для устройства.)