Xen ABI は真の ABI ですか?
-
12-09-2019 - |
質問
ウィキペディアのページを読んでいたのですが、 アビ, 、ABI で指定する必要がある内容について説明しており、Xen ページでは準仮想化用の特別なハイパーコール ABI があることが記載されています。私の質問は、プログラムは VM 内の Windows ABI などを使用して実行されるのに、Xen ABI はどのような ABI なのかということです。
解決
Xen にはゲスト システムを実行する 2 つの方法があります。
- 準仮想化ゲスト。その ABI を使用してハイパーバイザーと連携します。これには、動作するためにゲストを変更する必要があります (そのソース コードが利用可能である必要があります)。
- AMD の SVM や Intel の VT などの CPU の仮想化機能を使用します。この場合、ゲストが従う必要がある ABI はありません。
したがって、Xen の ABI は最初のケースにのみ関係します。
編集:ゲスト OS 上で実行されるユーザー空間アプリケーションには、 ない ハードウェアに直接アクセスしようとしない (または OS がそれらのアクセスをトラップし、ホストに優しい方法で処理する) と仮定して、変更する必要があります。したがって、そのゲストのカーネル (ここではドライバーなどを含む) のみを変更する必要があり、変更されていないアプリケーションはすべて実行されます。
所属していません StackOverflow