zx_debug_read

摘要

从调试串行端口读取消息。

声明

#include <zircon/syscalls.h>

zx_status_t zx_debug_read(zx_handle_t handle,
                          char* buffer,
                          size_t buffer_size,
                          size_t* actual);

说明

zx_debug_read() 尝试从调试串行端口读取数据。 参数 buffer_size 用于指定读取缓冲区的字节大小。 缓冲区的长度(以字节为单位)存储在 actual

该函数会等到至少有一个字节可用后再返回。 这最多可返回 buffer_size 字节。

NOTE: 来自调试的数据只有一个缓冲区 序列化,而调用 zx_debug_read 将使用此数据。如果有多个程序正在调用 同时也会收到各条数据流

如需使用 zx_debug_read() 函数,您必须指定 kernel.enable-serial-syscalls=true(在内核命令行中)。否则 该函数会返回 ZX_ERR_NOT_SUPPORTED

权限

handle 必须具有基本资源种类 ZX_RSRC_KIND_SYSTEM ZX_RSRC_SYSTEM_DEBUG_BASE

返回值

成功时返回 ZX_OKbuffer 指向的位置包含 实际读取的字节数。

错误

ZX_ERR_NOT_SUPPORTED kernel.enable-serial-syscalls 未设置为 true

ZX_ERR_INVALID_ARGS bufferactual 为 NULL。

另请参阅