ABI が何を指定しなければならないかを説明しているABIのウィキペディアのページと、準仮想化のための特別なハイパーコール ABI があると述べている Xen のページを読んでいました。私の質問は、プログラムはたとえば VM の Windows ABI を使用して実行されるため、Xen ABI はどのように ABI になるのでしょうか?
1 に答える
0
Xen には、ゲスト システムを実行する 2 つの方法があります。
- その ABI を使用してハイパーバイザーと連携する準仮想化ゲスト。これを機能させるには、ゲストを変更する必要があります (これには、ソース コードの可用性が必要です)。
- AMD の SVM や Intel の VT などの CPU の仮想化機能を使用します。この場合、ゲストが遵守しなければならない ABI はありません。
したがって、Xen の ABI は最初のケースのみに関連しています。
編集:ゲストOSで実行されているユーザー空間アプリケーションは、ハードウェアに直接アクセスしようとしない(またはOSがそれらのアクセスをトラップし、ホストフレンドリーな方法で処理する)と仮定して、変更する必要はありません。そのため、そのゲストのカーネル (ここではドライバーなどを含む) のみを変更する必要があり、変更されていないアプリケーションはすべて実行されます。
于 2009-06-07T14:58:24.340 に答える