关闭

通过调用门进行有特权级变换的转移,详细注解 对pmtest5.asm解释很详细.

107人阅读 评论(0) 收藏 举报
分类:

http://www.myexception.cn/operating-system/484288.html

http://www.myexception.cn/operating-system/445331.html

http://www.myexception.cn/operating-system/445078.html

 

代码总体过程如下:

1.进入保护模式,显示字符In Protect Mode

2.进入ring3,将TSS(内层堆栈选择子SelectorStack->ss及偏移TopOfStack->sp)加载到tr寄存器

3.手工将目标代码段ss、sp、cs、eip压栈后,使用retf实现ring0->ring3转移

4.执行ring3代码段,显示字符3

5.在ring3代码段使用调用门(ring3->ring0)调用ring0下的目标代码段显示字符C

6.在LABEL_SEG_CODE_DEST目标代码段中加载LDT,调用LDT代码段LABEL_CODE_A显示字符L

7.在LDT代码段LABEL_CODE_A中有保护模式调入实模式

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:713495次
    • 积分:12895
    • 等级:
    • 排名:第1121名
    • 原创:288篇
    • 转载:1964篇
    • 译文:3篇
    • 评论:11条
    最新评论