.exdicmd(EXDI 命令)
.exdicmd 使用活动 EXDI 调试连接将扩展调试接口 (EXDI) 命令发送到目标系统。 有关 EXDI 的详细信息,请参阅配置 EXDI 调试器传输。
exdicmd component|target parameters
此命令将参数直接传递到 EXDI 组件。 有关可用于目标系统的有效命令详情,请参阅 EXDI 组件的文档。
并非所有 EXDI 组件都实现了此函数。
参数
这些是 .exdicmd 的有效参数。
参数 | 说明 |
---|---|
target:*:<string> |
将 <string> 此功能传递给所有处理器核心的目标终端实体。 |
target:<n>:<string> |
将 <string> 函数传递给处理器核心 n (n-decimal number) 的目标终端实体。 |
component:*:<string> |
在所有处理器核心上执行 EXDI 组件<string> 函数。 |
component:<n>:<string> |
在处理器核心 n (n-decimal number) 上执行 EXDI 组件<string> 函数。 |
help |
显示基本帮助。 |
目标 exdicmd 用法
.exdicmd target:*:<string>
使用目标参数提供了一种在 Windows 调试器和 EXDI COM 服务器之间进行通信的方法。 如果命令将响应返回到调试器引擎,调试器将显示命令结果。
.exdicmd 目标参数将采用 EXDI COM 服务器能够处理的任何命令。 从而可以使用超出 EXDI 接口中直接支持的命令。
组件 exdicmd 用法
.exdicmd <component>:
此命令的用途主要是能够执行/测试 EXDI COM 服务器功能来验证基本功能。 它的使用量通常少于上述目标参数使用量。
请注意,有些命令可由 EXDI COM 服务器在内部执行,而无需将其发送到 JTAG 目标实体。 例如,可以从 EXDI COM 服务器收集遥测数据,以验证其操作是否正确。
环境
描述符 | 值 |
---|---|
模式 | 仅内核模式 |
目标 | 仅限实时调试 |
平台 | All |
其他信息
下面演示了将 .exdicmd 与使用语法.exdicmd target:0:<OpenOCD command>
的 OpenOCD 目标配合使用的示例。
0: kd> .exdicmd target:0:info network
Target command response: e1000.0: index=0,type=nic,model=e1000,macaddr=52:54:00:12:34:56
\ net0: index=0,type=user,net=10.0.2.0,restrict=off
OK
exdiCmd: The function: 'info network' was completed.
0: kd> .exdicmd target:0:info registers system -v
Target command response:
NumberOfRegisters: 9
Name | Value | Access code
fs_base | 0000000000000000 | n/a
gs_base | fffff8047b907000 | n/a
k_gs_base | 000000e7cbdbe000 | n/a
cr0 | 0000000080050033 | n/a
cr2 | fffff8048454de64 | n/a
cr3 | 00000000001ae000 | n/a
cr4 | 00000000000006f8 | n/a
cr8 | 0000000000000000 | n/a
efer | 0000000000000d01 | 0xc0000080
exdiCmd: The function: 'info registers system -v' was completed.
如果目标系统无法理解该命令,则会返回未知命令消息。
0: kd> .exdicmd target:0:Foo
Target command response: unknown command: 'Foo'
.outmask
如果未显示输出,请检查输出掩码是否设置为使用 .outmask (控制输出掩码)显示详细输出。
如果未在详细模式下启动调试器,则可以使用 .outmask 7FF
.outmask 进行设置。
注解
有关设置 EXDI 调试器连接的详细信息,请参阅配置 EXDI 调试器传输。