1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
#include "syslib.h"
#include <minix/vm.h>
#include <string.h>
/*===========================================================================*
* vm_procctl *
*===========================================================================*/
static int vm_procctl(endpoint_t ep, int param,
vir_bytes m1, vir_bytes len, int flags)
{
message m;
int result;
memset(&m, 0, sizeof(m));
m.VMPCTL_WHO = ep;
m.VMPCTL_PARAM = param;
m.VMPCTL_M1 = m1;
m.VMPCTL_LEN = len;
m.VMPCTL_FLAGS = flags;
result = _taskcall(VM_PROC_NR, VM_PROCCTL, &m);
return(result);
}
int vm_procctl_clear(endpoint_t ep)
{
return vm_procctl(ep, VMPPARAM_CLEAR, 0, 0, 0);
}
int vm_procctl_handlemem(endpoint_t ep, vir_bytes m1, vir_bytes len,
int writeflag)
{
return vm_procctl(ep, VMPPARAM_HANDLEMEM, m1, len, writeflag);
}
|