zx_pager_create

摘要

建立新的 Pager 物件。

宣告

#include <zircon/syscalls.h>

zx_status_t zx_pager_create(uint32_t options, zx_handle_t* out);

說明

zx_pager_create() 會建立新的 Pager 物件。

刪除 Pager 物件後,原本需要與 Pager 通訊的任何 VMO 存取權都會失敗,如同呼叫 zx_pager_detach_vmo() 一樣。此外,核心將盡可能加快錯誤發生的速度 (例如,移除存在的網頁),但確切的行為取決於實作方式。

傳回的帳號代碼將具備下列權限: - ZX_RIGHT_TRANSFER - 帳號代碼可能會轉移到其他程序。 - ZX_RIGHT_INSPECT - 可能會使用 zx_object_get_info() 進行檢查。 - ZX_RIGHT_ATTACH_VMO - 可能會使用 zx_pager_create_vmo() 連接 VMO,並使用 zx_pager_detach_vmo() 卸離 VMO。 - ZX_RIGHT_MANAGE_VMO - 可能會變更自有 VMO 的內容或呼叫器相關中繼資料,例如使用 zx_pager_supply_pages()zx_pager_op_range()

權限

呼叫端工作政策必須允許 ZX_POL_NEW_PAGER

傳回值

zx_pager_create() 會在成功時傳回 ZX_OK,失敗時則會傳回下列其中一個錯誤代碼。

錯誤

ZX_ERR_INVALID_ARGS out 是無效指標,或 options 為 0 以外的任何值。

ZX_ERR_NO_MEMORY 因記憶體不足而失敗。

另請參閱