vm_invalidatep 内核服务

用途

释放未记入日志的持久段或客户机段的指定范围内的页帧。

语法

#include <sys/types.h>
#include <sys/errno.h>
#include <sys/vmuser.h>
int vm_invalidatep ( 锡德, 普首, npages)
Vmid_t 锡德;
vpn_t 普首;
乌隆 npages;

参数

描述
sid 标识基本段。
普首 范围内的第一个页码。
npages 要从 普首 值开始失效的页面数。 所有页面必须位于同一段中。

描述

vm_invalidatep 内核服务例程废弃与指定页范围内的虚拟内存对象相关联的任何页帧。

如果发现处于指定范围内的页面处于页面调进或页面调出状态,那么线程将同步进入休眠状态,直到页面 I/O 完成为止。 当 I/O 完成时,将释放任何驻留在内存中的页帧。

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

执行环境

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

这适用于文件,并且可能不会针对工作存储段进行调用。

返回值

描述
重大安全事件数量 指示无效操作已完成。
EINVAL 指示下列其中一个错误:
  • 普首 < 0.
  • npages < 0.
  • 页时间间隔不在一个段中。
  • 锡德 参数无效。
  • 段类型无效。