1/* 2 * Copyright (c) 2007, 2008, 2009, 2011, 2012, ETH Zurich. 3 * All rights reserved. 4 * 5 * This file is distributed under the terms in the attached LICENSE file. 6 * If you do not find this file, copies can be found by writing to: 7 * ETH Zurich D-INFK, Universitaetstrasse 6, CH-8092 Zurich. Attn: Systems Group. 8 */ 9 10#ifndef SYS_ARCH_H 11#define SYS_ARCH_H 12 13#include <stdbool.h> 14#include <assert.h> 15#include <barrelfish/thread_sync.h> 16 17/// Protection level 18typedef u8_t sys_prot_t; 19 20typedef struct thread_wrapper *sys_thread_t; 21 22typedef struct thread_sem *sys_sem_t; 23 24struct bf_sys_mbox { 25 void *msg; 26 bool empty; 27 struct thread_mutex mutex; 28 struct thread_cond changed_cond; 29}; 30typedef struct bf_sys_mbox * sys_mbox_t; 31 32 33#define SYS_MBOX_NULL 0 34#define SYS_SEM_NULL 0 35 36#endif 37