zxvv_read_state

摘要

读取 vCPU 的状态。

声明

#include <zircon/syscalls.h>

zx_status_t zx_vcpu_read_state(zx_handle_t handle,
                               uint32_t kind,
                               void* buffer,
                               size_t buffer_size);

说明

zx_vcpu_read_state() 会将 kind 指定的 handle 状态读取到 缓冲区。只有在已执行以下命令时,读取 handle 的状态才有效: 已暂停。

kind 必须为 ZX_VCPU_STATE

必须在同一线程 handle 上调用 zx_vcpu_read_state()

权限

handle 的类型必须为 ZX_OBJ_TYPE_VCPU 且包含 ZX_RIGHT_READ

返回值

如果成功,zx_vcpu_read_state() 会返回 ZX_OK。失败时,系统会显示一个错误值 。

错误

ZX_ERR_ACCESS_DENIED 句柄没有 ZX_RIGHT_READ 权限。

ZX_ERR_BAD_HANDLE handle 是无效的句柄。

ZX_ERR_BAD_STATE handle 处于错误状态,无法读取状态。

ZX_ERR_INVALID_ARGS kind 没有命名已知的 vCPU 状态,缓冲区是一个 指针无效,或者 buffer_sizekind 的预期大小不匹配。

ZX_ERR_WRONG_TYPE handle 不是 vCPU 的句柄。

另请参阅