CPU的调试支持

在这里插入图片描述

  • INT3指令:断点指令,当CPU执行到该指令时便会产生断点异常,以便中断到调试器程序。(INT3指令是 软件断点 的实现基础)
  • 标志寄存器(FLAGS)中的TF标志:陷阱标志位,当该标志为1时,CPU每执行完一条指令就产生调试异常,陷阱标志位是 单步执行 的实现基础。
  • 调试寄存器DR0~DR7:用于设置硬件断点和报告调试异常的细节。
  • 断点异常(#BP):当INT3指令执行时,会导致该异常,CPU转到该异常的处理例程,异常处理例程会进一步将异常分发给调试器软件。
  • 调试异常(#DP):当除INT3指令以外的调试事件发生时,会导致该异常。
  • 任务状态段(TSS)的T标志:任务陷阱标志,当切换到设置T标志的任务时,CPU会产生调试异常,中断到调试器。
  • 分支记录机制:用来记录上一个分支、中断和异常的地址等信息。
  • 性能监视:用于监视和优化CPU及软件的执行效率。
  • JTAG支持:可以与JTAG调试器一起工作来调试单独靠软件调试器无法调试的问题。
CPU基础

CPU操作模式:(IA-32处理器)

  • 保护模式
    为了实现多任务,保护多任务环境中的各个任务的安全。
    对任务的保护机制分为:
    任务内的保护(靠特权级别检查实现的),核心是权限控制
    任务间的保护(靠虚拟内存映射机制实现的【包括段映射和页映射】)
  • 实地址模式(实模式)
  • 虚拟8086模式
  • 系统管理模式
  • IA-32e模式
    在这里插入图片描述

特权级
IA-32处理器定义了4个特权级,又称为环(Ring),分别用0、1、2、3表示。0代表的特权最高,3代表的特权最低。

最高的特权级通常是分配给操作系统的内核代码和数据的(比如Windows操作系统的内核模块是在特权级0(Ring0)运行的);
Windows下的各种应用程序是在特权级3运行的。
因为特权级0下运行的通常都是内核模块,所以人们便把在特权级0运行说成内核模式(Kernel Mode)运行。
把特权级3运行说成在用户模式(User Mode)运行。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值