+
+ /* operation for an action, not for VM it self */
+ model->suspend = ws_action_suspend;
+ model->resume = ws_action_resume;
+// model->is_suspended = ws_action_is_suspended;
+// model->set_max_duration = ws_action_set_max_duration;
+ model->set_priority = ws_action_set_priority;
+// #ifdef HAVE_TRACING
+// model->set_category = ws_action_set_category;
+// #endif
+ model->get_remains = ws_action_get_remains;
+// #ifdef HAVE_LATENCY_BOUND_TRACKING
+// model->get_latency_limited = ws_get_latency_limited;
+// #endif
+
+
+
+
+
+
+
+ xbt_assert(surf_cpu_model_vm);
+ model->extension.workstation.cpu_model = surf_cpu_model_vm;
+
+ model->extension.workstation.execute = vm_ws_execute;
+ model->extension.workstation.sleep = ws_action_sleep;
+ model->extension.workstation.get_state = ws_get_state;
+ // model->extension.workstation.get_speed = ws_get_speed;
+ // model->extension.workstation.get_available_speed = ws_get_available_speed;
+
+ // model->extension.workstation.communicate = ws_communicate;
+ // model->extension.workstation.get_route = ws_get_route;
+ // model->extension.workstation.execute_parallel_task = ws_execute_parallel_task;
+ // model->extension.workstation.get_link_bandwidth = ws_get_link_bandwidth;
+ // model->extension.workstation.get_link_latency = ws_get_link_latency;
+ // model->extension.workstation.link_shared = ws_link_shared;
+ // model->extension.workstation.get_properties = ws_get_properties;
+
+ // model->extension.workstation.open = ws_action_open;
+ // model->extension.workstation.close = ws_action_close;
+ // model->extension.workstation.read = ws_action_read;
+ // model->extension.workstation.write = ws_action_write;
+ // model->extension.workstation.stat = ws_action_stat;
+ // model->extension.workstation.unlink = ws_action_unlink;
+ // model->extension.workstation.ls = ws_action_ls;
+
+
+ model->extension.vm_workstation.create = vm_ws_create;
+ model->extension.vm_workstation.set_state = vm_ws_set_state;
+ model->extension.vm_workstation.get_state = vm_ws_get_state;
+ model->extension.vm_workstation.migrate = vm_ws_migrate;
+ model->extension.vm_workstation.destroy = vm_ws_destroy;
+ model->extension.vm_workstation.suspend = vm_ws_suspend;
+ model->extension.vm_workstation.resume = vm_ws_resume;
+ model->extension.vm_workstation.save = vm_ws_save;
+ model->extension.vm_workstation.restore = vm_ws_restore;
+ model->extension.vm_workstation.get_pm = vm_ws_get_pm;
+
+ model->extension.workstation.set_params = ws_set_params;
+ model->extension.workstation.get_params = ws_get_params;
+