2013年1月31日

浅谈一致码段,非一致码段

摘要: “一致”的意思是这样的,当转移目标是一个特权级更高的一致代码段,当前的特权级会被延续下去,而向特权级更高的非一致代码段转移会引起常规保护错误,除非使用调用门或者任务门。如果系统代码不访问受保护的资源和某些类型的异常处理,它可以放在一致代码段中。为避免低特权级的程序访问而被保护起来的系统代码则应放到非一致代码段中。要注意的是,如果目标代码的特权级低的话,无论它是不是一致代码段,都不能通过call或者jmp转移进去,尝试这样的转移会导致常规保护错误。所有的数据段都是非一致的,这意味着不可能被低特权级的代码访问到。然而,与代码段不同的是,数据段可以被更高特权级的代码访问到,而不需要使用特定的门,记住 阅读全文

posted @ 2013-01-31 18:24 追寻前人的脚步 阅读(231) 评论(0) 推荐(0) 编辑

实模式到保护模式的那一跳

摘要: 以前看的都是理论,今天拿起《自己动手写操作系统》,把其中的一个小例子改了一个验证自己的理解是否正确原本是这样的 1 ; ========================================== 2 ; pmtest1.asm 3 ; 编译方法:nasm pmtest1.asm -o pmtest1.com 4 ; ========================================== 5 6 %include "pm.inc" ; 常量, 宏, 以及一些说明 7 8 org 0100h 9 jmp LABEL_BEGIN10 11 ... 阅读全文

posted @ 2013-01-31 12:27 追寻前人的脚步 阅读(500) 评论(0) 推荐(0) 编辑

导航