/demos/trunk/loader/common/nload.c |
---|
16,7 → 16,7 |
#include "lconst.h" |
/* Activate task output debug */ |
#define TASK_OUTPUT |
//#define TASK_OUTPUT |
int cal_cycles = CALIBRATION_RESULT; //Calibration const, it converts usec to cycles |
struct timespec zero_time; //Zero time of the simulation |
259,7 → 259,7 |
pthread_t j; |
int err = 0; |
//cprintf("(%d, type %d)", i, current->task_type); |
switch(current->task_type) { |
case PAR_TASK_OS: |
err = fsf_create_local_thread(generic_get_server_from_contract(current->contract),generic_get_task_model(current), &j,NULL, |
/demos/trunk/loader/shark/fsfinit.c |
---|
15,6 → 15,7 |
fsf_server_id_t server; |
union sigval no_sigval = {0}; |
int i; |
int err=0; |
FSF_start_service_task(); |
24,14 → 25,18 |
fsf_initialize_contract(&contract); |
fsf_set_contract_basic_parameters(&contract,&c->cmin,&c->tmax,c->workload); |
fsf_set_contract_reclamation_parameters(&contract,&c->cmax,&c->tmin,FSF_DEFAULT_GRANULARITY, NULL, 1,1); |
err=fsf_set_contract_basic_parameters(&contract,&c->cmin,&c->tmax,c->workload); |
if (err) exit(err); |
err=fsf_set_contract_reclamation_parameters(&contract,&c->cmax,&c->tmin,FSF_DEFAULT_GRANULARITY, NULL, 1,1); |
if (err) exit(err); |
if (TIMESPEC2USEC(&c->deadline) != 0) |
fsf_set_contract_timing_requirements(&contract,false,&c->deadline,0,no_sigval,0,no_sigval); |
err=fsf_set_contract_timing_requirements(&contract,false,&c->deadline,0,no_sigval,0,no_sigval); |
else |
fsf_set_contract_timing_requirements(&contract,true,NULL,0,no_sigval,0,no_sigval); |
err=fsf_set_contract_timing_requirements(&contract,true,NULL,0,no_sigval,0,no_sigval); |
if (err) exit(err); |
switch (c->local_scheduler) { |
case PAR_EDF: |
fsf_set_contract_scheduling_policy(&contract,FSF_EDF); |
46,7 → 51,8 |
} |
fsf_negotiate_contract(&contract,&server); |
err=fsf_negotiate_contract(&contract,&server); |
if (err) exit(err); |
c->server = server; |
} |
/demos/trunk/loader/shark/shark.c |
---|
11,6 → 11,7 |
extern struct loader_contract loader_contract_list[]; |
extern int total_loader_task; |
extern int total_loader_contract; |
extern unsigned int clk_per_msec; |
mutex_t mutex_table[MAX_MUTEX]; |
int main_chunk; |
133,7 → 134,8 |
#ifdef __NEW_TRACER__ |
FTrace_OSD_init_udp(1,"192.168.82.43","192.168.82.41"); |
//FTrace_OSD_init_udp(1,"192.168.82.43","192.168.82.205"); |
FTrace_OSD_init_udp(1, "192.168.82.205", "192.168.82.43"); |
FTrace_send_chunk(main_chunk, 0, FTRACE_CHUNK_FLAG_FREE | FTRACE_CHUNK_FLAG_CYC); |
214,8 → 216,15 |
#endif |
TRACER_LOGEVENT(FTrace_EVT_trace_start,0,0); |
//TRACER_LOGEVENT(FTrace_EVT_trace_start,0,0); |
TRACER_LOGEVENT(FTrace_EVT_trace_start,proc_table[exec_shadow].context,clk_per_msec); |
for (i=0;i<10;i++) |
if (proc_table[i].context != 0) TRACER_LOGEVENT(FTrace_EVT_id, |
(unsigned short int)proc_table[i].context,i); |
i = 0; |
kern_gettime(&zero_time); |
while (i < total_loader_task) { |