Assembly 如何理解英特尔第三卷中关于CPL的这些句子

Assembly 如何理解英特尔第三卷中关于CPL的这些句子,assembly,x86,intel,Assembly,X86,Intel,英特尔V34.6访问权限部分包含以下句子: 一些操作使用线性地址隐式访问系统数据结构;由此产生的对这些数据的访问 无论CPL如何,数据结构都是监控模式访问。此类访问的示例包括: 访问全局描述符表(GDT)或本地描述符表(LDT)以加载段描述符;访问 发送中断或异常时,发送到中断描述符表(IDT);并访问任务状态 段(TSS)作为任务切换或CPL更改的一部分。所有这些访问都称为隐式监控模式 不考虑CPL的访问 如何理解“不考虑CPL”对于CPL来说是至关重要的,必须认真对待。归根结底,它所说的是,

英特尔V34.6访问权限部分包含以下句子:

一些操作使用线性地址隐式访问系统数据结构;由此产生的对这些数据的访问 无论CPL如何,数据结构都是监控模式访问。此类访问的示例包括: 访问全局描述符表(GDT)或本地描述符表(LDT)以加载段描述符;访问 发送中断或异常时,发送到中断描述符表(IDT);并访问任务状态 段(TSS)作为任务切换或CPL更改的一部分。所有这些访问都称为隐式监控模式 不考虑CPL的访问


如何理解“不考虑CPL”对于CPL来说是至关重要的,必须认真对待。

归根结底,它所说的是,有时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
如果程序以管理员权限运行,则
如果页面标记为隐式主管访问,则
访问是隐式管理模式

否则,如果不清楚你的实际问题是什么。问题是不明白英语短语“不管”的意思吗?还是你不懂别的?