3

x86 セグメンテーション保護に関するブログ記事を読んでいました。RPL は DPL と異なる可能性がありますか? もしそうなら、これのユースケースは何ですか?

4

1 に答える 1

2

それらは異なる場合があり、それは意図的なものです。

OS /カーネルがユーザーコードに代わって何かを行うとき、ユーザーコードの特権を使用してメモリにアクセスできるという考えです(ユーザーコードのレベルRPLを反映します)。Requestor Privilege Levelそれらが不十分な場合、例外が発生して操作が失敗します。この (または同様の) メカニズムが存在しない場合、ユーザー コードは OS/カーネルに代わって実行される操作を何らかの方法で要求することにより、OS/カーネルを破壊する可能性があり、その操作は、カーネルの特権を使用してカーネルによって実行されます。それがEOPを取得する場所です。

セグメントの詳細については、ソース、Intel の CPU マニュアルにアクセスしてください。それはすべてそこにあります。

于 2013-01-21T22:59:40.357 に答える