X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Finclude%2Fvnet%2Fvnet_host_interface.h;fp=palacios%2Finclude%2Fvnet%2Fvnet_host_interface.h;h=768cdd1c72f450b46a1054c1d5e53f53e8ffb96b;hb=d12cdf5b213b2b51d525914a852ceacd2c198b5a;hp=0000000000000000000000000000000000000000;hpb=56b5a7897dfb4dbf0b556d46c456fb9bdaa15762;p=palacios.git diff --git a/palacios/include/vnet/vnet_host_interface.h b/palacios/include/vnet/vnet_host_interface.h new file mode 100644 index 0000000..768cdd1 --- /dev/null +++ b/palacios/include/vnet/vnet_host_interface.h @@ -0,0 +1,46 @@ +/* + * This file is part of the Palacios Virtual Machine Monitor developed + * by the V3VEE Project with funding from the United States National + * Science Foundation and the Department of Energy. + * + * The V3VEE Project is a joint project between Northwestern University + * and the University of New Mexico. You can find out more at + * http://www.v3vee.org + * + * Copyright (c) 2011, Lei Xia + * Copyright (c) 2011, The V3VEE Project + * All rights reserved. + * + * Author: Lei Xia + * + * This is free software. You are permitted to use, + * redistribute, and modify it as specified in the file "V3VEE_LICENSE". + */ + +#ifndef __VNET_INTERFACE_H__ +#define __VNET_INTERFACE_H__ + +struct v3_thread { +}; + +v3_thread * v3_thread_create(int (*func)(void *), void *arg, char * name); +void v3_thread_sleep(int cond); +void v3_thread_wakeup(v3_thread *); +void v3_thread_kill(v3_thread *); +void v3_thread_stop(v3_thread *); +void v3_thread_continue(v3_thread *); + +void udelay(unsigned long usecs); + +// I know there is timer in palacios, but it has to be binded to specific VM, and the granularity is not +// guaranteed +// I need a timer that is global, not related to any specific VM, and also fine-granularity +v3_timer * v3_create_timer(int interval /*in us*/, void (*timer_fun)(uint64_t eclipsed_cycles, void * priv_data), void * pri_data); +int v3_del_timer(v3_timer *); +int v3_start_timer(v3_timer *); +int v3_stop_timer(v3_timer *); + + +#endif + +