寻呼机

姓名

pager - 用户空间分页机制

摘要

分页器为用户空间进程提供一种机制,以便为 VMO 提供需求分页。

说明

分页器对象允许用户空间分页器服务(通常是文件系统)创建 VMO,用作外部数据的内存中缓存。对于由分页器对象创建的给定 VMO,内核会将页面请求传送到关联端口。然后,分页器服务负责通过向 VMO 提供适当的页面来执行请求。

内核不会进行预提取;分页器服务负责实现所有适用的预提取。

单个分页器可以同时支持多个 VMO。针对不同 VMO 的请求可以通过创建 VMO 时使用的 key 参数来区分。此外,多个独立的分页器对象也可能同时存在。

创建分页器不是特权操作。不过,如果操作需要将 IPC 阻塞回用户空间进程,则在 VMO 上运行的系统调用的默认行为是失败,因此应用通常需要注意它们何时在分页器拥有的 VMO 上运行。这意味着,如果服务为客户端提供分页器拥有的 VMO,则应在其 API 中明确说明这一点。通过检查 zx_info_vmo_t 中的 zx_object_get_info() 返回的 ZX_INFO_VMO_PAGER_BACKED 标志,即可确定访问 VMO 是否可能会导致分页器请求。

TODO(stevensd):回写当前未实现。更新文档。

另请参阅

系统调用