Introduction   User API Reference   DSMlib Reference   IDL Interface   File List   Index  

dsmlib.h File Reference

Dataspace Manager support library. More...

Go to the source code of this file.

Data Structures

struct  dsmlib_client_desc
struct  dsmlib_ds_desc

Defines

#define dsmlib_get_id(ds)   ((ds)->id)
#define dsmlib_next_ds(ds)   ((ds)->ds_next)
#define dsmlib_prev_ds(ds)   ((ds)->ds_prev)

Typedefs

typedef struct dsmlib_client_desc dsmlib_client_desc_t
typedef struct dsmlib_ds_desc dsmlib_ds_desc_t
typedef void(* dsmlib_iterator_fn_t )(dsmlib_ds_desc_t *ds, void *data)
typedef L4_CV void *(* dsmlib_get_page_fn_t )(void **data)
typedef L4_CV void(* dsmlib_free_page_fn_t )(void *page, void *data)

Functions

L4_CV int dsmlib_init (dsmlib_get_page_fn_t get_page_fn, dsmlib_free_page_fn_t free_page_fn)
 Init dataspace manager library.
L4_CV dsmlib_ds_desc_tdsmlib_create_dataspace (void)
 Create new dataspace.
L4_CV void dsmlib_release_dataspace (dsmlib_ds_desc_t *ds)
 Release dataspace.
L4_CV dsmlib_ds_desc_tdsmlib_get_dataspace (l4_uint32_t id)
 Return dataspace descriptor.
L4_CV void dsmlib_set_owner (dsmlib_ds_desc_t *ds, l4_threadid_t owner)
 Set dataspace owner.
L4_CV l4_threadid_t dsmlib_get_owner (const dsmlib_ds_desc_t *ds)
 Return owner of the dataspace.
L4_CV int dsmlib_is_owner (const dsmlib_ds_desc_t *ds, l4_threadid_t client)
 Check owner of dataspace.
L4_CV void dsmlib_set_name (dsmlib_ds_desc_t *ds, const char *name)
 Set dataspace name.
L4_CV char * dsmlib_get_name (dsmlib_ds_desc_t *ds)
 Get dataspace name.
L4_CV void dsmlib_set_dsm_ptr (dsmlib_ds_desc_t *ds, void *ptr)
 Set dataspace manager data.
L4_CV void * dsmlib_get_dsm_ptr (const dsmlib_ds_desc_t *ds)
 Get dataspace manager data.
L4_CV int dsmlib_add_client (dsmlib_ds_desc_t *ds, l4_threadid_t client, l4_uint32_t rights)
 Add client to dataspace.
L4_CV int dsmlib_remove_client (dsmlib_ds_desc_t *ds, l4_threadid_t client)
 Remove dataspace client.
L4_CV int dsmlib_remove_all_clients (dsmlib_ds_desc_t *ds)
 Remove all clients from dataspace.
L4_CV int dsmlib_is_client (const dsmlib_ds_desc_t *ds, l4_threadid_t client)
 Check if someone is a client of a dataspace.
L4_CV int dsmlib_set_rights (const dsmlib_ds_desc_t *ds, l4_threadid_t client, l4_uint32_t rights)
 Set client rights.
L4_CV l4_uint32_t dsmlib_get_rights (const dsmlib_ds_desc_t *ds, l4_threadid_t client)
 Return client rights.
L4_CV int dsmlib_check_rights (const dsmlib_ds_desc_t *ds, l4_threadid_t client, l4_uint32_t rights)
 Check client rights.
L4_CV dsmlib_ds_desc_tdsmlib_get_dataspace_list (void)
 Return dataspace list head.
L4_CV void dsmlib_dataspaces_iterate (dsmlib_iterator_fn_t fn, void *data)
 Iterate dataspace list.
L4_CV void dsmlib_show_ds_hash (void)
 Show dataspace hash table.
L4_CV void dsmlib_list_ds (void)
 List dataspaces.
void L4_CV dsmlib_list_ds_clients (const dsmlib_ds_desc_t *ds)
 List dataspace clients.


Detailed Description

Dataspace Manager support library.

Date:
11/20/2001
Author:
Lars Reuther <reuther@os.inf.tu-dresden.de>

Definition in file dsmlib.h.


DMphys Reference Manual, written by Lars Reuther  © 2000-2003