操作系统中的特权级检查

Posted 太初有道,道与神同在,道就是神……

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了操作系统中的特权级检查相关的知识,希望对你有一定的参考价值。

这里涉及到的几个概念: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的基址都有专门的寄存器保存。

以上是关于操作系统中的特权级检查的主要内容,如果未能解决你的问题,请参考以下文章

Linux从头学12:读完这篇特权级文章,你就比别人更“精通”操作系统!

自制操作系统07深入浅出特权级

操作系统-深入特权级转移下

操作系统-保护模式中的特权级下

操作系统-保护模式中的特权级下

操作系统博客目录