加入收藏 | 设为首页 | 会员中心 | 我要投稿 开发网_新乡站长网 (https://www.0373zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Windows > 正文

多处理器语法

发布时间:2022-11-17 12:42:00 所属栏目:Windows 来源:
导读:  多处理器语法本文内容

  KD 和内核模式 WinDbg 支持多个处理器调试。 可以在任何多处理器平台上执行此类调试。

  处理器的编号为 0 到 n。

  如果当前处理器是处理器 0 (,即,如果当前导致调
  多处理器语法本文内容
 
  KD 和内核模式 WinDbg 支持多个处理器调试。 可以在任何多处理器平台上执行此类调试。
 
  处理器的编号为 0 到 n。
 
  如果当前处理器是处理器 0 (,即,如果当前导致调试器处于活动状态的处理器) ,则你可以检查其他非当前处理器 (处理器 1 到 n) 。 但是,不能更改非当前处理器中任何内容。 只能查看其状态。
 
  选择处理器
 
  可以使用 . echocpunum (显示 CPU) 命令显示当前处理器的处理器编号。 此命令的输出使你能够立即根据内核调试提示中的文本来判断何时正在处理多个处理器系统。
 
  在下面的示例中,kd> 提示符前面的 0: 指示正在调试计算机中的第一个处理器。
 
  0: kd>
  使用 "更改 (处理器) 命令在处理器之间切换,如以下示例所示。
 
  0: kd> ~1s
  1: kd>
  现在,正在调试计算机中的第二个处理器。
 
  如果遇到中断并且无法理解堆栈跟踪,可能需要更改多处理器系统上的处理器。 中断可能发生在其他处理器上。
 
  在其他命令中指定处理器
 
  可以在多个命令之前添加处理器编号。 此数字前面没有一个 ~ () ,但 ~S 命令中除外 。
 
  注意 在用户模式调试中,使用波浪符指定线程。 有关此语法详细信息,请参阅 线程语法。
 
  处理器 ID 不一定必须显式引用。 相反,可以使用解析为与处理器 ID 对应的整数的数字表达式。 若要指示表达式应解释为处理器,请使用以下语法。
 
  ||[Expression]
  在此语法中,需要方括号, Expression 表示解析为对应于处理器 ID 的整数的任何数值表达式。
 
  在下面的示例中,处理器根据用户定义的伪寄存器的值而更改。
 
  ||[@$t0]
  示例
 
  以下示例使用 k (Display Stack Backtrace) 命令显示来自处理器 2 的堆栈跟踪。
 
  1: kd> 2k
  以下示例使用 r (Registers) 命令显示处理器 3 的 eax 寄存器。
 
  1: kd> 3r eax
  但是,以下命令提供了语法错误,因为不能更改除当前处理器外的其他处理器的状态。
 
  1: kd> 3r eax=808080
  断点
 
  在内核调试期间, bp、bu、bm (Set Breakpoint) 和 ba (Break on Access) 命令将应用于多处理器计算机的所有处理器。
 
  例如,如果当前处理器为 3,可以输入以下命令windows处理器,将断点置于 SomeAddress。
 
  1: kd> bp SomeAddress
  然后,任何处理器 (一个处理器) 该地址执行的任何处理器都会导致断点陷阱。
 
  显示处理器信息
 
  可以使用 !running 扩展显示目标计算机上每个处理器的状态。 对于每个处理器, !running 还可以显示进程控制块 (PRCB) 中的当前和下一个线程字段、16 个内置排队旋转锁的状态以及堆栈跟踪。
 
  可以使用 !cpuinfo 和 !cpuid 扩展来显示有关处理器本身的信息。
 

(编辑:开发网_新乡站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!