通用 #
开启Cache x86 CPU需要开启Cache 可用于指定内存的寄存器 sub:x86指令参考
标志位 #
ZF零标志位的实现原理 用方向标志DF控制数据传送的方向 溢出标志OF IOPL位 修改IOPL位和IF位的四条指令 中断标志IF
实模式 #
寻址 #
8086支持的四种调用方式 #
16位相对近调用 16位间接绝对近调用 16位直接绝对远调用 16位间接绝对远调用
中断 #
两类外部硬件中断 NMI的中断号 实模式下的中断向量表 中断向量表的初始化 可编程中断控制器8259芯片 中断屏蔽寄存器(Interrupt Mask Register,IMR) 实模式下中断处理过程
保护模式 #
保护模式下,处理器的地址转换分为两个阶段(stage):
- logical address translating
- linear address space paging
线性地址(Linear Address) 从实模式进入保护模式的步骤
分段机制 #
格式 #
栈段描述符的界限 栈操作时的保护 任务状态段TSS的格式 TSS描述符 TSS中的IO许可位映射区 IO许可位串 IO许可映射区的最后一位必须是0xFF 调用门描述符
检查 #
中断 #
保护机制 #
处理器对栈的保护 保护模式的三种权限类型 conforming与non-conforming代码段 低特权级调用高特权级的两种方法 特权级检查规则 请求特权级别RPL和当前特权级CPL不相同的例子 在特权级检查中引入RPL的必要性 操作系统负责设置RPL字段 特权指令(Privileged Instructions) 特权级别与栈 调用门的特权级检查
长模式 #
长模式段描述符 长模式中断门描述符格式 长模式下的4KB分页
Links #
Intel Pentium Instruction Set Reference Intel 64 and IA-32 Architectures Software Developer Manuals