From b945eafa126d6a17aa8826a405df7d5d4d999008 Mon Sep 17 00:00:00 2001 From: Alexis211 Date: Wed, 31 Mar 2010 17:26:21 +0200 Subject: Shared memory segment manager in userland --- src/include/gc/shm.h | 16 ++++++++++++++++ src/include/gc/syscall.h | 2 +- 2 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 src/include/gc/shm.h (limited to 'src/include/gc') diff --git a/src/include/gc/shm.h b/src/include/gc/shm.h new file mode 100644 index 0000000..1a3f0a1 --- /dev/null +++ b/src/include/gc/shm.h @@ -0,0 +1,16 @@ +#ifndef DEF_SHM_H +#define DEF_SHM_H + +#include + +/* + * This file contains headers for the shared segment mapping manager. + */ + +void* shm_alloc(size_t size); //allocates a spot in shared memory space +void shm_free(void* p); //frees a spot + +void* shm_allocNew(size_t size); //calls shm_alloc, and maps a new segment there +void shm_freeDel(void* p); //unmaps segment and calls shm_free + +#endif diff --git a/src/include/gc/syscall.h b/src/include/gc/syscall.h index f731e10..c93a523 100644 --- a/src/include/gc/syscall.h +++ b/src/include/gc/syscall.h @@ -13,7 +13,7 @@ typedef char int8_t; typedef unsigned size_t; struct user_request { - uint32_t func, params[3]; + uint32_t func, params[3], shmsize[3]; int isBlocking; // 1 : blocking request, 0 : nonblocking request (message) }; -- cgit v1.2.3