摘要
建立新的分頁器物件。
宣告
#include <zircon/syscalls.h>
zx_status_t zx_pager_create(uint32_t options, zx_handle_t* out);
說明
zx_pager_create() 會建立新的分頁物件。
當分頁器物件遭到毀損時,任何需要與分頁器通訊的 VMO 存取作業都會失敗,如同呼叫 zx_pager_detach_vmo() 一樣。此外,核心會盡量確保盡快發生錯誤 (例如逐出目前頁面),但確切行為取決於實作方式。
傳回的控制代碼會具備下列權利:
ZX_RIGHT_TRANSFER- 控制代碼可能會轉移至其他程序。ZX_RIGHT_INSPECT- 可使用zx_object_get_info()檢查。ZX_RIGHT_ATTACH_VMO- May attach VMOs withzx_pager_create_vmo()and detach VMOs withzx_pager_detach_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 是無效的指標或 NULL,或 options 是 0 以外的值。
ZX_ERR_NO_MEMORY 記憶體不足,因此失敗。