vm_writep 内核服务

用途

针对虚拟内存对象中的页面范围启动页面输出。

语法

#include <sys/types.h>
#include <sys/errno.h>
#include <sys/vmuser.h>
int vm_writep ( vmid,  pfirst,  npages)
vmid_t  vmid;
int pfirst;
int npages;

描述

vm_writep 内核服务会针对虚拟内存对象中指定的页面范围启动页面输出。 仅针对修改后的页面启动 I/O。 未更改的页面保留在内存中,但其引用位设置为 0。

调用者可以通过调用 vms_iowait 内核服务来等待此调用和先前调用所启动的 I/O 完成。

注: 不支持在大页上使用 vm_writep 子例程。

参数

描述
弗米德 指定该虚拟内存对象的标识。
普首 指定页出开始的第一个页号。
npages 指定要对其执行页面调出操作的页面数。

执行环境

仅可从 流程环境 调用 vm_writep 内核服务。

返回值

描述
重大安全事件数量 指示成功完成。
EINVAL 指示下列任何一个错误:
  • 普首 = 0 , npages = 0。
  • "虚拟内存对象标识" 无效。
  • 起始页为否定。
  • 页面数为负值。
  • 页面范围超过了虚拟内存对象的大小。
  • 一个或多个大页面位于目标页面范围内。