Added: HEAD
协议
调试
在 fuchsia.driver.debug/debug.fidl 中定义
用于执行交互式驱动程序调试命令的协议。
执行
使用提供的参数向量执行命令。
实参向量 args 会按原样传递给驱动程序的命令处理程序,而不会进行动态修改。参数向量遵循标准命令行惯例(类似于 argv),其中第一个参数 (args[0]) 通常是命令或子命令名称,后跟任何标志或位置参数。
命令执行的标准输出和标准错误会流式传输到提供的 stdout 和 stderr 套接字。驱动程序或命令处理程序会写入这些套接字,并在返回响应时或之前将其关闭。
返回命令的进程退出代码 (exit_code),其中 0 通常表示成功。
错误
如果执行请求本身失败,则返回 zx.Status 错误:
ZX_ERR_INVALID_ARGS:args为空。ZX_ERR_NOT_FOUND:args[0]中请求的命令未知。
请求
| 名称 | 类型 |
|---|---|
args |
vector<string:1024>:128
|
stdout |
handle<socket>
|
stderr |
handle<socket>
|
响应
| 名称 | 类型 |
|---|---|
payload |
Debug_Execute_Result
|
ListCommands
列出所有受支持的命令及其说明。
请求
<EMPTY>
响应
| 名称 | 类型 |
|---|---|
payload |
Debug_ListCommands_Result
|
STRUCTS
Debug_Execute_Response
在 fuchsia.driver.debug/debug.fidl 中定义
| 字段 | 类型 | 说明 | 默认 |
|---|---|---|---|
exit_code |
int32
|
命令的退出代码,其中 0 通常表示成功。 |
无默认应用 |
Debug_ListCommands_Response
在 fuchsia.driver.debug/debug.fidl 中定义
| 字段 | 类型 | 说明 | 默认 |
|---|---|---|---|
commands |
vector<CommandInfo>:64
|
无默认应用 |
TABLES
CommandInfo
在 fuchsia.driver.debug/debug.fidl 中定义
调试协议中受支持命令的元数据。
| 序数 | 字段 | 类型 | 说明 |
|---|---|---|---|
1 |
name |
string:256
|
命令的名称。 |
2 |
description |
string:1024
|
对命令的作用及其用法的人类可读说明。 |
UNIONS
Debug_Execute_Result strict
在 fuchsia.driver.debug/debug.fidl 中定义
| 序数 | 变体 | 类型 | 说明 |
|---|---|---|---|
1 |
response |
Debug_Execute_Response
|
|
2 |
err |
zx/Status
|
|
3 |
framework_err |
internal
|
Debug_ListCommands_Result strict
在 fuchsia.driver.debug/debug.fidl 中定义
| 序数 | 变体 | 类型 | 说明 |
|---|---|---|---|
1 |
response |
Debug_ListCommands_Response
|
|
2 |
err |
zx/Status
|
|
3 |
framework_err |
internal
|
常量
| 名称 | 值 | 类型 | 说明 |
|---|---|---|---|
| MAX_ARG_COUNT |
128
|
uint32 |
|
| MAX_ARG_LENGTH |
1024
|
uint32 |
|
| MAX_COMMAND_COUNT |
64
|
uint32 |
|
| MAX_COMMAND_NAME_LENGTH |
256
|
uint32 |
|
| MAX_DESCRIPTION_LENGTH |
1024
|
uint32 |