Xen имеет два способа запуска гостевых систем:
- Паравиртуализированные гости, которые используют этот ABI для взаимодействия с гипервизором. Это требует изменения гостя для работы (что требует наличия его исходного кода).
- Использование функций виртуализации процессоров, таких как AMD SVM или Intel VT. В этом случае нет ABI, которому должен соответствовать гость.
Таким образом, ABI Xen относится только к первому случаю.
EDIT: приложения пользовательского пространства, работающие на гостевой ОС, должны быть изменены , а не , если они не пытаются напрямую получить доступ к оборудованию (или ОС перехватывает эти обращения и обрабатывает их дружественным для хоста способом ). Таким образом, необходимо изменить только ядро (в том числе драйверы и т. Д.) Этого гостя, и оно будет запускать любые неизмененные приложения.