特权级概述

CPL

CPL(current Privilege Level)是当前执行的程序或任务的特权级。它被存储在CS和SS的第0位和第一位上,通常情况下,CPL等于代码所在的段的特权级。当程序转移到不同特权级的代码段时,处理器将改变CPL。


DPL(Descriptor Privilege Level)

DPL表示段或者门的特权级。它被保存在段描述符或者门描述符的DPL字段中,正如我们先前所看到的那样。当当前代码段试图访问一个段或者门时,DPL将会和CPL以及段或门选择子的RPL相比较,根据段或者门类型的不同,DPL将会被区别对待,下面介绍一下各种类型的段或者门的情况:

数据段:

DPL规定了可以访问此段的最低特权级。

非一致代码段:DPL规定访问此段的特权级。

调用门:DPL规定了当前执行的程序或任务可以访问此调用门的最低特权级。

一致代码段和通过调用门访问的非一致代码段:DPL规定了访问此段的最高特权级。

TSS:DPL规定了可以访问此TSS的最低特权级。

RPL(requested Privilege Level)

RPL是通过段选择子的第0位和第一位表现出来的。处理器通过检查RPL和CPL来确认一个访问请求是否合法。即便提出访问请求的段有足够的特权级,如果RPL不够也是不行的。也就是说,如果RPL的数字比CPL大,哪么RPL将会起决定性作用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值