一致性代码段和非一致性代码段【转】
来源:互联网 发布:草根源码 编辑:程序博客网 时间:2024/05/17 22:18
一致代码段是内核开辟出来的供应用程序访问的段,但是不允许用户程序写入数据。
- CPL(Current Priviliege Level):它代表了当前代码段的特权等级,由CS和SS的第0位和第1位表示。当程序转移到不同的特权等级的代码时处理器将改变CPL。在遇到一致代 码段时,一致代码可以被相同或者更低特权等级(用户程序)的代码访问。当处理器访问一个与CPL特权等级不同的一致代码段时,CPL不会被改变。
- DPL(Descriptor Priviliege Level):表示段或者门的特权等级。它存储在段或者门描述符的DPL字段中。当当前代码段试图访问一个段或者门时,DPL将会和CPL以及RPL作比 较,根据段或者门类型的不同,DPL将会被区别对待: 数据段:DPL规定了可以访问此段的最低特权等级。 非一致代码段(不使用调用门的情况下):DPL规定了访问此段的特权级。 调用门:与数据段一致。 一致代码段和通过调用门访问的非一致代码段:DPL规定了访问此段的最高特权等级。 TSS:与数据段一致。
- RPL(Requested Priviliege Level):RPL是通过选择子的第0位和第1位来表示的。处理器通过检查RPL和CPL来确认一个访问请求是否合法。即使提出请求的段有足够的特权级,如果RPL不够也是不行的。也就是说,如果RPL的数字比CPL大,那么RPL将会起决定作用,反之亦然。
似乎下面的解释更直观一些:
对于一致代码段:也就是共享的段.
- 特权级高的程序不允许访问特权级低的数据:核心态不允许调用用户态的数据.
- 特权级低的程序可以访问到特权级高的数据.但是特权级不会改变:用户态还是用户态.
- 对于普通代码段.也就是非一致代码段:
- 只允许同级间访问.
- 绝对禁止不同级访问:核心态不用用户态.用户态也不使用核心态.
0 0
- 一致性代码段和非一致性代码段【转】
- 一致性代码段和非一致性代码段
- 一致性代码段和非一致性代码段
- 一致性代码段和非一致性代码段
- 一致性代码段和非一致性代码段
- 一致性代码段和非一致性代码段
- 一致性代码段和非一致性代码段
- 一致性代码段和非一致性代码段
- 一致和非一致性代码段
- 一致性/非一致性代码段的总结
- CPL DPL RPL的区别 &&一致性代码段和非一致性代码段
- CPL DPL RPL的区别 &&一致性代码段和非一致性代码段
- CPL DPL RPL的区别 &&一致性代码段和非一致性代码段
- 一致与非一致性代码段
- 一致与非一致性代码段
- 一致与非一致性代码段
- RPL DPL CPL 与一致性 非一致性代码段
- 保护模式下,什么是一致性代码和非一致性代码段
- java 异常
- 使用Gradle和Sonatype Nexus 搭建私有maven仓库
- c++构造函数详解
- AndroidStudio使用GreenDao的方法
- Keras中神经网络可视化模块keras.utils.visualize_util 的安装配置与错误解决办法
- 一致性代码段和非一致性代码段【转】
- Codeforces Round #135 (Div. 2)-D. Choosing Capital for Treeland
- 漫步线性代数十二——网络
- 2016年半年总结-提高你的加速度
- vs工程动态库和静态库学习心得
- 表单验证实现方法
- JS_Ajax基础
- 升序和降序(小练习)
- JS中模块的写法