关于DPL,CPL与RPL的一个很精妙的解释
2011-09-29 14:05
246 查看
1、 CPL是当前进程的权限级别(Current Privilege Level),是cs段中的
2、 RPL说明的是进程对段访问的请求权限(Request Privilege Level),意思是当前进程想要的请求权限。
3、 DPL存储在段描述符中,规定访问该段的权限级别(Descriptor Privilege Level).
下面打一个比方,中国官员分为6级国家主席1、总理2、省长3、市长4、县长5、乡长6。
假设我是当前进程。级别总理(CPL=2),我去聊城市(DPL=4)考察(呵呵),我用省长的级别(RPL=3 这样也能吓死他们
)去访问,可以吧,如果我用县长的级别,人家就不理咱了(你看看电视上的微服私访,呵呵),明白了吧!为什么采用RPL,是考虑到安全的问题,就好像你明明对一个文件用有写权限,为什么用只读打开它呢,还不是为了安全!
其实上述说法有误,其次它把为什么要把有RPL的目的说反了。实际情况是这样的:
本身你是个县长(CPL=3),你去一个省访问(DPL=1),按理说你就只能接受县长待遇,访问只能由县长访问的地方(DPL=3)。访问的时候需要领
一个许可证RPL,它决定你可以访问哪些地方。这个时候你想伪装成总理,于是申请了一个RPL=0许可证(实际表现为传递个操作系统一个RPL=0的段选
择符),但检查部门(操作系统内核)发现了你的伪装(通过使用ARPL指令),把你打回原形(让RPL=CPL=3),最后你还是只能访问县长能访问的地
方,你的伪装计划失败了。
2、 RPL说明的是进程对段访问的请求权限(Request Privilege Level),意思是当前进程想要的请求权限。
3、 DPL存储在段描述符中,规定访问该段的权限级别(Descriptor Privilege Level).
下面打一个比方,中国官员分为6级国家主席1、总理2、省长3、市长4、县长5、乡长6。
假设我是当前进程。级别总理(CPL=2),我去聊城市(DPL=4)考察(呵呵),我用省长的级别(RPL=3 这样也能吓死他们
)去访问,可以吧,如果我用县长的级别,人家就不理咱了(你看看电视上的微服私访,呵呵),明白了吧!为什么采用RPL,是考虑到安全的问题,就好像你明明对一个文件用有写权限,为什么用只读打开它呢,还不是为了安全!
其实上述说法有误,其次它把为什么要把有RPL的目的说反了。实际情况是这样的:
本身你是个县长(CPL=3),你去一个省访问(DPL=1),按理说你就只能接受县长待遇,访问只能由县长访问的地方(DPL=3)。访问的时候需要领
一个许可证RPL,它决定你可以访问哪些地方。这个时候你想伪装成总理,于是申请了一个RPL=0许可证(实际表现为传递个操作系统一个RPL=0的段选
择符),但检查部门(操作系统内核)发现了你的伪装(通过使用ARPL指令),把你打回原形(让RPL=CPL=3),最后你还是只能访问县长能访问的地
方,你的伪装计划失败了。
相关文章推荐
- 关于DPL,CPL与RPL的一个很精妙的解释
- 一个操作系统的实现:关于CPL、RPL、DPL
- 一个操作系统的实现:关于CPL、RPL、DPL
- 一个操作系统的实现:关于CPL、RPL、DPL
- 关于CPL、RPL、DPL
- 关于操作系统权限DPL,RPL,CPL[比喻太经典了]
- 关于段,CPL,DPL,RPL
- 一个操作系统的实现 不同特权级代码段之间的跳转 CPL DPL RPL 调用门
- 关于傅里叶变换的解释,转载一个我认为最经典的
- 用比喻类比说明CPU的特权级DPL - CPL - RPL
- 再次理解保护模式特权级——CPL、DPL、RPL、数据段、堆栈段、一致代码段、非一致代码段
- DPL,RPL,CPL 之间的联系和区别
- X86(IA32)段权限标志位CPL DPL RPL详解
- 详解 RPL、DPL、CPL 的关系
- 金矿在哪里? 关于利基市场的一个解释样例之电子商务
- DPL,RPL,CPL 之间的联系和区别
- 一个关于含有显式实参的虚函数调用问题解释
- Linux保护模式之-CPL、RPL、DPL
- Linux保护模式之-CPL、RPL、DPL
- 操作系统的特权级(1)----CPL、DPL和RPL