摘要
向调试串行端口写入消息。
声明
#include <zircon/syscalls.h>
zx_status_t zx_debug_write(const char* buffer, size_t buffer_size);
说明
zx_debug_write() 尝试将 buffer_size 字节的数据写入调试串行端口。
如需使用 zx_debug_write() 函数,您必须在内核命令行中指定 kernel.enable-serial-syscalls=true 或 kernel.enable-serial-syscalls=output-only。否则,该函数会返回 ZX_ERR_NOT_SUPPORTED。
zx_debug_write 旨在用于诊断。数据可能会被丢弃或截断,但来自两个不同 zx_debug_write 调用的数据不会交错或重新排序。
如果对调试串行端口的访问权限已被暂停(请参阅 zx_debug_suspend()),zx_debug_write() 会阻塞,直到访问权限恢复。在 zx_debug_write() 中被阻塞的线程可能会被暂停或终止。
权限
无。
返回值
成功时返回 ZX_OK。
错误
ZX_ERR_NOT_SUPPORTED kernel.enable-serial-syscalls 在内核命令行中未设置为 true 或 output-only。
ZX_ERR_INVALID_ARGS buffer 为 NULL。