vmem.h File Reference

#include <sys/types.h>

Go to the source code of this file.

Defines

#define VM_SLEEP   0x00000000
#define VM_NOSLEEP   0x00000001
#define VM_PANIC   0x00000002
#define VM_PUSHPAGE   0x00000004
#define VM_KMFLAGS   0x000000ff
#define VM_BESTFIT   0x00000100
#define VM_FIRSTFIT   0x00000200
#define VM_NEXTFIT   0x00000400
#define VM_MEMLOAD   0x00000800
#define VM_NORELOC   0x00001000
#define VM_ABORT   0x00002000
#define VM_FLAGS   0x0000FFFF
#define VMC_POPULATOR   0x00010000
#define VMC_NO_QCACHE   0x00020000
#define VMC_IDENTIFIER   0x00040000
#define VMC_XALLOC   0x00080000
#define VMC_FLAGS   0xFFFF0000
#define VMEM_ALLOC   0x01
#define VMEM_FREE   0x02
#define VMEM_SPAN   0x10
#define VMEM_ROTOR   0x20
#define VMEM_WALKER   0x40
#define VMEM_REENTRANT   0x80000000

Typedefs

typedef struct vmem vmem_t
typedef void *( vmem_alloc_t )(vmem_t *, size_t, int)
typedef void( vmem_free_t )(vmem_t *, void *, size_t)
typedef void *( vmem_ximport_t )(vmem_t *, size_t *, int)

Functions

vmem_tvmem_create (const char *, void *, size_t, size_t, vmem_alloc_t *, vmem_free_t *, vmem_t *, size_t, int)
vmem_tvmem_xcreate (const char *, void *, size_t, size_t, vmem_ximport_t *, vmem_free_t *, vmem_t *, size_t, int)
void vmem_destroy (vmem_t *)
void * vmem_alloc (vmem_t *, size_t, int)
void * vmem_xalloc (vmem_t *, size_t, size_t, size_t, size_t, void *, void *, int)
void vmem_free (vmem_t *, void *, size_t)
void vmem_xfree (vmem_t *, void *, size_t)
void * vmem_add (vmem_t *, void *, size_t, int)
int vmem_contains (vmem_t *, void *, size_t)
void vmem_walk (vmem_t *, int, void(*)(void *, void *, size_t), void *)
size_t vmem_size (vmem_t *, int)


Define Documentation

#define VM_ABORT   0x00002000

#define VM_BESTFIT   0x00000100

Referenced by vmem_alloc(), vmem_init(), and vmem_xalloc().

#define VM_FIRSTFIT   0x00000200

Referenced by vmem_alloc(), and vmem_xalloc().

#define VM_FLAGS   0x0000FFFF

#define VM_KMFLAGS   0x000000ff

#define VM_MEMLOAD   0x00000800

#define VM_NEXTFIT   0x00000400

Referenced by vmem_alloc().

#define VM_NORELOC   0x00001000

#define VM_NOSLEEP   0x00000001

#define VM_PANIC   0x00000002

#define VM_PUSHPAGE   0x00000004

#define VM_SLEEP   0x00000000

Referenced by vmem_init().

#define VMC_FLAGS   0xFFFF0000

#define VMC_IDENTIFIER   0x00040000

#define VMC_NO_QCACHE   0x00020000

#define VMC_POPULATOR   0x00010000

Referenced by vmem_create(), and vmem_init().

#define VMC_XALLOC   0x00080000

#define VMEM_ALLOC   0x01

Referenced by vmem_destroy(), and vmem_size().

#define VMEM_FREE   0x02

Referenced by vmem_size(), vmem_xalloc(), and vmem_xfree().

#define VMEM_REENTRANT   0x80000000

Referenced by vmem_walk().

#define VMEM_ROTOR   0x20

Referenced by vmem_create().

#define VMEM_SPAN   0x10

#define VMEM_WALKER   0x40

Referenced by vmem_walk().


Typedef Documentation

typedef void*( vmem_alloc_t)(vmem_t *, size_t, int)

typedef void( vmem_free_t)(vmem_t *, void *, size_t)

typedef struct vmem vmem_t

typedef void*( vmem_ximport_t)(vmem_t *, size_t *, int)


Function Documentation

void* vmem_add ( vmem_t ,
void *  ,
size_t  ,
int   
)

void* vmem_alloc ( vmem_t ,
size_t  ,
int   
)

int vmem_contains ( vmem_t ,
void *  ,
size_t   
)

vmem_t* vmem_create ( const char *  ,
void *  ,
size_t  ,
size_t  ,
vmem_alloc_t ,
vmem_free_t ,
vmem_t ,
size_t  ,
int   
)

void vmem_destroy ( vmem_t  ) 

void vmem_free ( vmem_t ,
void *  ,
size_t   
)

size_t vmem_size ( vmem_t ,
int   
)

void vmem_walk ( vmem_t ,
int  ,
void(*)(void *, void *, size_t)  ,
void *   
)

void* vmem_xalloc ( vmem_t ,
size_t  ,
size_t  ,
size_t  ,
size_t  ,
void *  ,
void *  ,
int   
)

vmem_t* vmem_xcreate ( const char *  ,
void *  ,
size_t  ,
size_t  ,
vmem_ximport_t ,
vmem_free_t ,
vmem_t ,
size_t  ,
int   
)

void vmem_xfree ( vmem_t ,
void *  ,
size_t   
)


Generated on Wed Sep 9 01:07:05 2009 for umem by  doxygen 1.5.9