码迷,mamicode.com
首页 > 其他好文 > 详细

操作系统中的特权级检查

时间:2017-04-07 14:12:53      阅读:143      评论:0      收藏:0      [点我收藏+]

标签:内核   保存   进程   系统   使用   地址   设置   image   索引   

这里涉及到的几个概念:DPL、RPL、CPL

DPL:存在于段描述符中,描述访问此段的最低特权级,即访问此段的进程CPL和RPL必须大于等于此段的DPL
RPL:存在于段选择符中的最低两位,成为请求特权级即进程的请求权限,这个可以由程序员自己设置但是其功能受到CPL的制约
CPL:存在于cs和ss寄存器中的最低两位,是当前执行程序或者任务的特权级。
技术分享
一个段描述符的DPL为0表示只允许内核层的进程访问,为3表示允许任意进程访问。
在实模式下,由于段寄存器是16位的,地址线有20根,当时的寻址是通过段寄存器中的值左移4位然后加上一个16位的地址值
而在保护模式下,32根地址线,段选择符中的作用就是使用其高13位作为段索引,指向GDT或者LDT中的某一项,第三位就表示在GDT还是在LDT。
而GDT和LDT的基址都有专门的寄存器保存。

操作系统中的特权级检查

标签:内核   保存   进程   系统   使用   地址   设置   image   索引   

原文地址:http://www.cnblogs.com/ck1020/p/6677849.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!