xbt_swag_t state_set;
double cost; /**< cost */
double priority; /**< priority (1.0 by default) */
+ double bound; /**< the capping of the CPU use */
double max_duration; /**< max_duration (may fluctuate until
the task is completed) */
double remains; /**< How much of that cost remains to
xbt_dict_t(*get_properties) (const void *resource);
void (*add_traces) (void);
+ void (*get_params) (void *ind_vm_ws, ws_params_t param);
+ void (*set_params) (void *ind_vm_ws, ws_params_t param);
+ xbt_dynar_t (*get_vms) (void *ind_vm_ws);
+
} s_surf_model_extension_workstation_t;
typedef struct surf_vm_workstation_model_extension_public {
void (*restore) (void *ind_vm_ws);
void (*migrate) (void *ind_vm_ws, void *ind_vm_ws_dest); // will be vm_ws_migrate()
- void * (*get_pm) (void *ind_vm_ws); // will be vm_ws_get_pmt()
int (*get_state) (void *ind_vm_ws);
void (*set_state) (void *ind_vm_ws, int state);
+ void * (*get_pm) (void *ind_vm_ws); // will be vm_ws_get_pm()
+
} s_surf_model_extension_vm_workstation_t;
/** \ingroup SURF_models
int (*is_suspended) (surf_action_t action); /**< Return whether an action is suspended */
void (*set_max_duration) (surf_action_t action, double duration); /**< Set the max duration of an action*/
void (*set_priority) (surf_action_t action, double priority); /**< Set the priority of an action */
+ void (*set_bound) (surf_action_t action, double bound); /**< Set the bound (the maximum CPU utilization) of an action */
#ifdef HAVE_TRACING
void (*set_category) (surf_action_t action, const char *category); /**< Set the category of an action */
#endif