匿名質問者
匿名質問者匿名質問者とは「匿名質問」を利用して質問した質問者。
「匿名質問」では、ユーザー名を公開せずに匿名の質問ができます。
詳しくはこちら

仮想化の勉強をしています。

CPUの命令セットの中に、特権命令とそうでない命令があるようですが、実際に例えばLinux上で表示される命令セットの中でどれが特権命令かを確認する方法はあるでしょうか。(当該CPUのIntelのサイト等見てみましたが分かりませんでした)

回答の条件
  • 1人5回まで
  • 13歳以上
  • 登録:2015/04/03 12:36:59
  • 終了:2015/04/05 19:07:31

ベストアンサー

匿名回答2号 No.1

匿名回答2号「匿名質問」を利用した質問に回答すると「匿名回答○号」と匿名で表示されます。
「匿名質問」では、ユーザー名を公開せずに匿名の質問ができます。
詳しくはこちら
2015/04/03 17:47:27

x86において特権命令と言った場合は特権レベル0でのみ実行できる命令となります。
http://www.intel.co.jp/content/dam/www/public/ijkk/jp/ja/documents/developer/IA32_Arh_Dev_Man_Vol3_i.pdf
149ページにあります。

仮想化における特権命令は、ゲストの動作するユーザーモードでは例外の発生する命令です。
http://www.slideshare.net/gion_XY/xx86
この意味でx86の命令を見た場合、特権レベル3で例外の発生する命令となると思いますが、メモリ保護等様々な条件がいろいろありますので以下から命令セットリファレンスを参照してください。
http://www.intel.co.jp/content/www/jp/ja/developer/download.html#ia32
それに加え、上記スライドにありますが、不足を補う工夫やVTなどの枠組みも必要となるようです。

匿名質問者

回答ありがとうございます。具体的に学習を進められそうです。

2015/04/05 19:07:20
  • 匿名回答1号
    匿名回答1号 2015/04/03 13:01:32
    CPUの命令セットってのは、機械語レベルの話で
    Linuxっていうと、言語レベルの話だと思う。
    言語レベルというと、ひとつの命令に対して、複数の機械語が実行されると思われる。

    つまり、Linuxの命令セット=CPUの命令セットには ならないと思うんだが。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません