vms_create 内核服务

用途

创建具有指定的类型,大小和限制的虚拟内存对象。

语法

#include <sys/types.h>
#include <sys/errno.h>
#include <sys/vmuser.h>
int vms_create (vmid, type, devgno, size,
uplim, downlim)
vmid_t * vmid;
int   type;
dev_t devgno;
int   size;
int   uplim;
int   downlim;

参数

描述
弗米德 指向要将虚拟内存对象标识存储在其中的变量。
TYPE 将虚拟内存对象类型和选项指定为位的 OR。 类型 参数的值必须为 V_CLIENTV_INTRSEG 标志指定是否可以从等待此对象的页面中断该进程。
德夫尼奥 指定用于客户机存储器的 g 节点的地址。 如果 类型 参数的值为 V_CLIENT,那么第三个参数是 g-node 普特尔 参数,否则,它是 德夫尼奥 参数。
大小 指定文件的当前大小 (以字节为单位)。 这可以是任何有效文件大小。 如果指定了 V_LARGE ,那么会将其解释为页数。
乌普林 已忽略。 通过与 块中的 u_limit 值进行比较,完成文件大小限制的实施。
唐林 已忽略。

描述

vms_create 内核服务会创建虚拟内存对象。 生成的虚拟内存对象标识将通过 弗米德 参数中的引用传回。

大小 参数用于确定所要创建的虚拟内存对象的大小 (以字节为单位)。 此参数设置一个内部变量,该变量确定删除虚拟内存对象时要处理的虚拟内存范围。

调用 vms_create 内核服务时,在调页设备表中需要文件系统的条目。

执行环境

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

返回值

描述
重大安全事件数量 指示操作成功。
ENOMEM 指示没有可用于该虚拟内存对象的空间。
ENODEV 指示调页设备表中没有文件系统的条目。
EINVAL 指示参数不兼容或不正确。