如何理解英特尔第3卷中有关CPL的这些句子

时间:2015-07-12 08:25:58

标签: assembly x86 intel

英特尔V3 4.6访问权限部分包含以下句子:

  

某些操作隐式访问具有线性地址的系统数据结构;由此产生的访问权限   无论CPL如何,数据结构都是管理员模式访问。此类访问的示例包括以下内容:   访问全局描述符表(GDT)或本地描述符表(LDT)以加载段描述符;访问   传递中断或异常时到中断描述符表(IDT);并访问任务状态   段(TSS)作为任务切换或CPL更改的一部分。所有这些访问都称为隐式管理程序模式   无论CPL如何,都可以访问。

如何理解" 无论CPL " 对于CPL至关重要,必须认真对待。

1 个答案:

答案 0 :(得分:-1)

最终,它的含义是,有时可以使用受限制的超级用户权限而不是用户权限来访问CPL = 3的页面。

在您引用的段落之前的段落中,它表示“......;访问权限 而CPL< 3是管理员模式访问,而CPL = 3时访问是用户模式访问。“

然后,从你的引用结尾开始并到段落的末尾,它说“所有这些访问被称为隐式管理员模式 无论CPL如何访问。 CPL时进行的其他访问< 3被称为显式管理员模式访问。“

所以,基本上就是这种情况:

if a program is running with supervisor privileges then
   if the page is flagged for implicit supervisor access then
      access is implicit supervisor mode
   else if CPL<3 then 
      access is explicit supervisor mode
   else (i.e when CPL=3) 
      access is user mode

else if a program is running with user privileges then
   if CPL<3 then no access is allowed
   else (i.e when CPL=3) access is user mode

当您查看页面下方的规则列表时,您将看到有关行为的决策基于访问模式{explicit supervisor |隐式主管|用户}和CPL {&lt; 3 | = 3}。因此,最终,CPL不会被忽视。