vm_gudet 内核服务

用途

从当前进程的地址空间中除去与 VM_guatt 相连的区域。

语法

#include <sys/types.h>
#include <sys/errno.h>
#include <sys/vmuser.h>

int vm_gudet (kaddr, uaddr, size, flags)
void * kaddr;
void * uaddr;
vmsize_t size;
long flags;

参数

描述
卡德尔 VM_guatt附加的内核地址。
瓦德尔 连接了内核区域的进程地址空间中的位置。
大小 附加区域的长度 (以字节为单位)。
标志 VM_gudet 操作的类型,必须为 任何位置

描述

VM_gudet 是一个内核服务,用于拆离由 VM_guatt连接的全局内核内存区域。 仍必须分配此内存,在使用 vm_gfree 取消分配区域后将其断开连接是错误的。 如果拆离成功,那么 卡德尔 处的全局内核内存区域将不再可由调用进程在 瓦德尔 处进行寻址。

执行环境

VM_gudet 内核服务只能从进程环境中进行调用。

返回值

描述
0 已成功拆离用户地址。
EINVAL 指示下列其中一个错误:
  • 标志无效。
  • 卡德尔大小 指示的区域不在由 vm_galloc分配的区域内。

实现细节

VM_gudet 内核服务是基本操作系统 (BOS) 运行时的一部分。