有关特权级的概念问题?

xxxzzz 2002-08-19 08:49:03
1一项任务的特权级由RPL和CPL中较高的特权级决定,
2而RPL和CPL中较低的特权级是任务的有效特权级EPL

?1 .一项任务的特权级不是由当前特权级CPL决定吗,?1处的这句话怎么理解
?2 .解释一下一项任务的有效特权级EPL的概念
...全文
121 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
woody009 2002-08-24
  • 打赏
  • 举报
回复
to ALvin
杨的汇编程序教程 我看也不是很好懂  上面有些图例画的也不太准确  尤其是保护模式下的
atm2001 2002-08-24
  • 打赏
  • 举报
回复
还是那句老话!
手指头都快敲断了——建议搂住去看那本狠狠厚的intel指令集的参考书的第一卷和第二卷
golden_alvin 2002-08-23
  • 打赏
  • 举报
回复
建议看杨季文的
80x86汇编语言程序设计教程
上面写的比较清楚
xxxzzz 2002-08-20
  • 打赏
  • 举报
回复
在此解释一下好吗?

CPL和RPL都是由段寄存器的低2位决定的,CPL只对应于CS(当前),而RPL可对应于其它的段寄存器,也可对应于CS,是吗?
atm2001 2002-08-20
  • 打赏
  • 举报
回复
手指头都快敲断了——建议搂住去看那本狠狠厚的intel指令集的参考书的第一卷和第二卷
xxxzzz 2002-08-20
  • 打赏
  • 举报
回复
CPL和RPL都是由段寄存器的低2位决定的,CPL只对应于CS(当前),而RPL可对应于其它的段寄存器,也可对应于CS,是吗?

概念太模糊,请详解!
xxxzzz 2002-08-20
  • 打赏
  • 举报
回复
我现在只想问这个
CPL和RPL都是由段寄存器的低2位决定的,CPL只对应于CS(当前),而RPL可对应于其它的段寄存器,也可对应于CS,是吗?
atm2001 2002-08-20
  • 打赏
  • 举报
回复
注意!!
(1)对于非一致代码段,要求CPL=DPL,RPL< =DPL;对于一致代码段,要求CPL >=DPL。
(2)通常描述符特权级DPL规定了对应段的特权级。如果描述符描述的是数据段,那么DPL就规定了访问该数据段的最外层特权级;如果描述符描述的是代码段,那么DPL就规定了执行该代码段所需要的CPL。但从上述装载CS高速缓冲寄存器时进行的保护检测可见,对于一致代码段,却要求CPL>=DPL,也就是说,一致代码段描述符中的DPL规定了可以转移到一致代码段的最内层特权级。于是,3级的程序可以转移到任何一致的代码段,而0级的程序只允许转移到DPL等于0的一致代码段。一致代码段描述符内DPL的这种解释,正好与正常的DPL的解释相反。
一致的可执行段是一种特别的段。这种存储段,为在多个特权级执行的程序,提供对子例程的共享支持,而不要求改变特权级。例如,通过把数值库例程放在一致的代码段中,可以使不同级执行的程序共享数值库例程。这样,任何特权级的程序可以使用段间调用指令,调用库中的例程,并在调用者所具有的特权级执行该例程。

atm2001 2002-08-20
  • 打赏
  • 举报
回复
CPL和RPL都是由段寄存器的低2位决定的,CPL只对应于CS(当前),而RPL可对应于其它的段寄存器,也可对应于CS,是吗?
应该是了,我对CPL,RPL不太熟,对DPL了解的很多。
内容 段寄存器 段基地址 段界限(固定) 段属性(固定)
存在性 特权级 已存取 粒度 扩展方向 可读性 可写性 可执行 堆栈大小 一致特权
CS 当前CS*16 0000FFFFH Y 0 Y B U Y Y Y - N 就在这里!!!这是章很容易理解的表!
SS 当前SS*16 0000FFFFH Y 0 Y B U Y Y N W -
DS 当前DS*16 0000FFFFH Y 0 Y B U Y Y N - -
ES 当前ES*16 0000FFFFH Y 0 Y B U Y Y N - -
FS 当前FS*16 0000FFFFH Y 0 Y B U Y Y N - -
GS 当前GS*16 0000FFFFH Y 0 Y B U Y Y N - -


atm2001 2002-08-19
  • 打赏
  • 举报
回复
1。一项任务的特权级是这个任务可以拥有的最高特权级!!当然是较高的那个了。CPL决定的是这个任务的当前运作时拥有的特权级。
2。一项任务的特权级可能很高,但是由于一些原因使她的当前特权级不是他所拥有的最高特权级,即一个任务的有效特权级指的是这个任务可以拥有的特权级的范围
wowocock 2002-08-19
  • 打赏
  • 举报
回复
CPL,RPL,DPL这些概念确实有点搞,atm2001(松鼠)能举例分析吗????
xxxzzz 2002-08-19
  • 打赏
  • 举报
回复
1.正常程序是这样的。。
问:说一说不正常程序如何
2.不一定
问:为什么
coderStone 2002-08-19
  • 打赏
  • 举报
回复
atm2001(松鼠) 分析的很好
atm2001 2002-08-19
  • 打赏
  • 举报
回复
1 CPL对应于一项任务中的一个代码段的选择子,而RPL对应于这项任务中另一个代码段的选择子,而其中特权级较高的就是该任务的特权级,而CPL却始终对应于当前代码段的选择子;是这样吗?正常程序是这样的。。
2 EPL始终对应于一项任务中的最低特权级,是吗?不一定
xxxzzz 2002-08-19
  • 打赏
  • 举报
回复
1 CPL对应于一项任务中的一个代码段的选择子,而RPL对应于这项任务中另一个代码段的选择子,而其中特权级较高的就是该任务的特权级,而CPL却始终对应于当前代码段的选择子;是这样吗?
2 EPL始终对应于一项任务中的最低特权级,是吗?

21,498

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧