RPL来自哪里?

时间:2012-10-30 21:38:09

标签: assembly protection privilege x86

我从许多不同的网站上读到有点困惑,但我不清楚:

  

每个段寄存器都有一个可见部分和一个不可见的部分   部分。可见部分称为段选择器   并且有加载段选择器的直接指令。

     

请求者权限级别(RPL):此字段标识特权权限   提供受保护的数据访问的级别。

好的,我明白我可以在汇编中使用指令,例如,加载选择器,但是我不能修改RPL吗?它从何而来? CPU如何选择它?感谢

1 个答案:

答案 0 :(得分:3)

RPL实际上只是段选择器的最低2位,因此您可以将所需的任何特权级别加载到其中(0-3),但是如果请求的级别高于(数字上更低)DPL的级别。相应的细分,你会得到一个GP错误。这允许程序轻松访问具有比操作系统授予的权限更少的权限的段,如果这与内存映射I / O或其他任何内容相关。