私はカーネルがプロセス(ユーザーモードで実行)を実行し、 CPU命令(許可さIN
れOUT
た命令であると仮定)を許可できることを読んでいます。
しかし、カーネルは、プロセスが他の特権コマンド(例:など)を実行することを許可できますHLT
かRDTSC
?
ベストアンサー1
はいまたはいいえ
いいえ
MMU構成などの一部のガイドラインはカーネルに制限する必要があります。
はい
特権命令が実行されると、トラップ(例外)が発生します。このトラップはカーネルによって処理できます。カーネルは、ユーザーモードプロセスの代わりにコマンドを実行することを選択できます(おそらくチェックと感度を確認した後)。
いいえ
x86では、一部の特権命令には特権がないため、トラップに陥らないでください。しかし、彼らは正解を提示した。これにより、特権コードを仮想化するときに仮想化が困難になる可能性があります。 (例:私がどのモードにいるかを尋ね、ユーザーモードと言います)