Barrelfish
Data Structures | Functions
memobj.h File Reference

Memobj definitions. More...

Data Structures

struct  memobj
 Public interface for memobj. More...
 
struct  memobj_fixed
 
struct  memobj_numa
 

Functions

errval_t memobj_create_pinned (struct memobj_pinned *memobj, size_t size, memobj_flags_t flags)
 Initialize a memory object of type anon. More...
 
errval_t memobj_create_anon (struct memobj_anon *memobj, size_t size, memobj_flags_t flags)
 Initialize. More...
 
errval_t memobj_destroy_anon (struct memobj *memobj, bool delete_caps)
 Destroy the object.
 
errval_t memobj_create_one_frame (struct memobj_one_frame *memobj, size_t size, memobj_flags_t flags)
 Initialize a memory object of type one frame. More...
 
errval_t memobj_destroy_one_frame (struct memobj *memobj)
 Destroy the object. More...
 
errval_t memobj_create_one_frame_lazy (struct memobj_one_frame_lazy *memobj, size_t size, memobj_flags_t flags, struct capref frame, size_t chunk_size)
 Initialize a memory object of type one frame. More...
 
errval_t memobj_create_one_frame_one_map (struct memobj_one_frame_one_map *memobj, size_t size, memobj_flags_t flags)
 Initialize a memory object of type one frame. More...
 
errval_t memobj_create_fixed (struct memobj_fixed *memobj, size_t size, memobj_flags_t flags, size_t count, size_t chunk_size)
 Initialize. More...
 
errval_t memobj_destroy_fixed (struct memobj *memobj)
 Destroy the object.
 
errval_t memobj_create_numa (struct memobj_numa *numa, size_t size, memobj_flags_t flags, size_t node_count, size_t stride)
 Initialize. More...
 
errval_t memobj_destroy_numa (struct memobj *memobj)
 Destroy the object.
 

Detailed Description

Memobj definitions.

Function Documentation

errval_t memobj_create_anon ( struct memobj_anon *  anon,
size_t  size,
memobj_flags_t  flags 
)

Initialize.

Parameters
memobjThe memory object
sizeSize of the memory region
flagsMemory object specific flags

This object handles multiple frames. The frames are mapped in on demand.

errval_t memobj_create_fixed ( struct memobj_fixed fixed,
size_t  size,
memobj_flags_t  flags,
size_t  count,
size_t  chunk_size 
)

Initialize.

Parameters
memobjThe memory object
sizeSize of the memory region
flagsMemory object specific flags

This object handles multiple frames. The frames are mapped in on demand.

errval_t memobj_create_numa ( struct memobj_numa mo_numa,
size_t  size,
memobj_flags_t  flags,
size_t  node_count,
size_t  stride 
)

Initialize.

Parameters
memobjThe memory object
sizeSize of the memory region
flagsMemory object specific flags

This object handles multiple frames. The frames are mapped in on demand.

errval_t memobj_create_one_frame ( struct memobj_one_frame *  one_frame,
size_t  size,
memobj_flags_t  flags 
)

Initialize a memory object of type one frame.

Parameters
memobjThe memory object
sizeSize of the memory region
flagsMemory object specific flags
frameThe frame to use
offsetOffset into the frame
errval_t memobj_create_one_frame_lazy ( struct memobj_one_frame_lazy *  lazy,
size_t  size,
memobj_flags_t  flags,
struct capref  frame,
size_t  chunk_size 
)

Initialize a memory object of type one frame.

Parameters
memobjThe memory object
sizeSize of the memory region
flagsMemory object specific flags
frameThe frame to use
errval_t memobj_create_one_frame_one_map ( struct memobj_one_frame_one_map *  state,
size_t  size,
memobj_flags_t  flags 
)

Initialize a memory object of type one frame.

Parameters
memobjThe memory object
sizeSize of the memory region
flagsMemory object specific flags
frameThe frame to use
offsetOffset into the frame
errval_t memobj_create_pinned ( struct memobj_pinned *  pinned,
size_t  size,
memobj_flags_t  flags 
)

Initialize a memory object of type anon.

Parameters
memobjThe memory object
sizeSize of the memory region
flagsMemory object specific flags

This object handles multiple frames. The frames are mapped in on demand.

errval_t memobj_destroy_one_frame ( struct memobj memobj)

Destroy the object.