X-Git-Url: http://bilbo.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/8e8f8b64b899284cbd166542ba352cd0c44059e8..d856f4bd6806492b443db55bd92257d4636a6894:/include/msg/msg.h diff --git a/include/msg/msg.h b/include/msg/msg.h index 986a463507..6584b8806c 100644 --- a/include/msg/msg.h +++ b/include/msg/msg.h @@ -95,7 +95,8 @@ XBT_PUBLIC(int) MSG_get_host_msgload(msg_host_t host); /* int MSG_get_msgload(void); This function lacks specification; discard it */ XBT_PUBLIC(double) MSG_get_host_speed(msg_host_t h); XBT_PUBLIC(int) MSG_host_is_avail(msg_host_t h); -XBT_PUBLIC(void) __MSG_host_destroy(msg_host_priv_t host); +XBT_PUBLIC(void) __MSG_host_priv_free(msg_host_priv_t priv); +XBT_PUBLIC(void) __MSG_host_destroy(msg_host_t host); /*property handlers*/ XBT_PUBLIC(xbt_dict_t) MSG_host_get_properties(msg_host_t host); @@ -362,29 +363,36 @@ XBT_PUBLIC(int) MSG_get_channel_number(void); * */ /* This function should not be called directly, but rather from MSG_vm_start_from_template that does not exist yet*/ -XBT_PUBLIC(msg_vm_t) MSG_vm_start(msg_host_t location, const char *name, int coreAmount); + +// TODO add VDI later +XBT_PUBLIC(msg_vm_t) MSG_vm_create_core(msg_host_t location, const char *name); +XBT_PUBLIC(msg_vm_t) MSG_vm_create(msg_host_t ind_pm, const char *name, + int core_nb, int mem_cap, int net_cap, char *disk_path, int disk_size); + +XBT_PUBLIC(void) MSG_vm_start(msg_vm_t); XBT_PUBLIC(int) MSG_vm_is_suspended(msg_vm_t); XBT_PUBLIC(int) MSG_vm_is_running(msg_vm_t); -XBT_PUBLIC(void) MSG_vm_bind(msg_vm_t vm, msg_process_t process); -XBT_PUBLIC(void) MSG_vm_unbind(msg_vm_t vm, msg_process_t process); // simple wrapper over process_kill +XBT_PUBLIC(const char*) MSG_vm_get_name(msg_vm_t); XBT_PUBLIC(void) MSG_vm_migrate(msg_vm_t vm, msg_host_t destination); +/* Suspend the execution of the VM, but keep its state on memory. */ XBT_PUBLIC(void) MSG_vm_suspend(msg_vm_t vm); - // \forall p in VM, MSG_process_suspend(p) // Freeze the processes - -XBT_PUBLIC(void) MSG_vm_resume(msg_vm_t vm); // Simulate the fact of reading the processes from disk and resuming them - // \forall p in VM, MSG_process_resume(p) // unfreeze them +XBT_PUBLIC(void) MSG_vm_resume(msg_vm_t vm); -XBT_PUBLIC(void) MSG_vm_shutdown(msg_vm_t vm); // killall +/* Save the VM state to a disk. */ +XBT_PUBLIC(void) MSG_vm_save(msg_vm_t vm); +XBT_PUBLIC(void) MSG_vm_restore(msg_vm_t vm); -XBT_PUBLIC(void) MSG_vm_reboot(msg_vm_t vm); +/* Shutdown the guest operating system. */ +XBT_PUBLIC(void) MSG_vm_shutdown(msg_vm_t vm); XBT_PUBLIC(void) MSG_vm_destroy(msg_vm_t vm); -XBT_PUBLIC(xbt_dynar_t) MSG_vms_as_dynar(void); +/* TODO: do we need this? */ +// XBT_PUBLIC(xbt_dynar_t) MSG_vms_as_dynar(void); /* void* MSG_process_get_property(msg_process_t, char* key)