Вопрос

Я читал страницу Википедии на ABI, который описывает, что должен указывать ABI, и страница Xen, на которой указано, что у них есть специальный ABI гиперзвонка для их паравиртуализации.Мой вопрос в том, поскольку программы будут выполняться, скажем, с использованием Windows ABI в виртуальной машине, как Xen ABI является ABI?

Это было полезно?

Решение

У Xen есть два способа запуска гостевых систем:

  1. Паравиртуализированные гости, которые используют этот ABI для взаимодействия с гипервизором.Для этого требуется, чтобы гостевой сервер был изменен для работы (что требует наличия его исходного кода).
  2. Использование функций виртуализации процессоров, таких как AMD SVM или Intel VT.В этом случае нет никакого ABI, которому гость должен соответствовать.

Таким образом, ABI Xen относится только к первому случаю.

Редактировать:Приложениям пользовательского пространства, работающим в гостевой ОС, необходимо не могут быть изменены, предполагая, что они не пытаются получить доступ к оборудованию напрямую (или ОС перехватывает эти обращения и обрабатывает их удобным для хоста способом).Таким образом, необходимо изменить только ядро (здесь включая драйверы и так Далее) этого гостя, и оно будет запускать любые неизмененные приложения.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top