控制转移(二)
来源:互联网 发布:java http 发送文件 编辑:程序博客网 时间:2024/05/19 03:18
特权级转移这块一直觉得很混乱,理不出头绪,现在终于发现问题在哪了:不要将特权级和代码段、数据段、堆栈段搅在一块。代码段、数据段、堆栈段他们各自有自己的特权级处理规则。在学习的过程中还要有意识的提醒自己这种规则是哪种类型段的规则。三种类型的段相互配合才能组成一段可以运行的程序。既然三种类型之间的段有联系,三种类型段的特权级处理方式也会有自己的联系和区别。在学习中有意识的提醒自己正在阅读的规则是属于哪种类型的段的,就能很好的理解他们之间的联系和区别,从而使学习事半功倍。
这里很多名称都很相似,很多都只一地之差,所指代的涵义相近又有区别,正确严谨的理解、并防止相互混淆这些名词很关键。
装载数据段寄存器时的特权检测
在把选择子装入数据段寄存器DS、ES、FS、GS时,要进行检测:
1、选择自不能为空
2、选择子指定的描述符必须是数据段描述符、可读可执行的代码段或一致的可读可执行代码段
3、对于数据段和可读可执行代码段,要求CPL<=DPL ,RPL<=DPL(即高特权级访问低特权级)
4、对应段必须存在
装载堆栈段寄存器时的特权级检测
1、选择子不能为空
2、选择子指定的描述符必须是可读可写数据段描述符
3、要求CPL=RPL=CPL
4、对应段必须存在
- 控制转移(二)
- 汇编(十六)——控制转移类指令二
- 控制转移(一)
- 转移控制
- 控制转移(三)——调用门转移流程
- 控制转移指令
- 控制转移类指令
- Swift控制转移语句
- Swift控制转移语句
- 控制转移语句
- 控制转移语句
- C++ 无条件转移控制
- 汇编(十五)——控制转移类指令一
- 汇编(十七)——控制转移类指令三
- 控制转移(一致代码和非一致代码)
- MCS-51控制转移指令
- 控制文件的添加,转移
- mysql proxy学习(二)——状态转移
- 《SOA思想、技术与系统集成应用详解》读书笔记四-《SOA核心技术及应用》Apache Tuscany sca安装及与eclipse结合
- UT-S3C6410完美实现了三星S3c6410处理器性能
- “由于帐户限制您无法登录”小问题的解决办法
- jquery和js 编辑删除后返回查询条件的方法
- 编程技巧之:MYSQL5.X重置root密码 (windows系统)
- 控制转移(二)
- ARM Processor & Keil 8051
- 详解UT6410开发板NFS挂载失败的原因
- java 中byte转换int时为何与0xff进行与运算
- 编程技巧之:vs2003调试时提示:试图运行项目时出错:无法启动调试 没有正确安装调试器。请运行安装程序安装
- jQuery跨域请求解决方法
- 【转】 java生成pdf方案总结
- 国内开发者赚钱机会来了!
- 轻松学到自己想要的知识